当前位置:网站首页>什么是闭包?
什么是闭包?
2022-08-01 13:56:00 【mrcsunflower】
闭包:函数嵌套函数,内部函数就是闭包。
<script>
function outerFun() {
let a = 10;
function innerFun() {
console.log(a);
}
return innerFun;
}
let fun = outerFun();
fun();
</script>正常情况下:函数执行完成,内部变量会销毁(释放内存空间)。
闭包:内部函数没有执行完成,外部函数变量不会被销毁。
应用:封装代码,实现模块化
<script>
let module = (function () {
let a = 10;
let b = 20;
function add() {
return a + b;
}
function sub() {
return a - b;
}
return {
add,
sub
}
})() //立即执行函数,声明时直接调用
let result1 = module.add();
let result2 = module.sub();
console.log(result1);
console.log(result2);
</script>边栏推荐
猜你喜欢
随机推荐
性能优化——粒子优化笔记
多线程案例——定时器
lua脚本关键
Gradle系列——Gradle测试,Gradle生命周期,settings.gradle说明,Gradle任务(基于Groovy文档4.0.4)day2-3
The basic knowledge of scripting language Lua summary
树和二叉树的转换
PIR人体感应AC系列感应器投光灯人体感应开关等应用定制方案
Two Permutations
ABC260 E - At Least One (Dual Pointer)
珠海首个水环境安全监测系统上线
四足机器人软件架构现状分析
tensorflow2.0 handwritten digit recognition (tensorflow handwriting recognition)
代理商替代义隆153 Aip4210
【2022蓝帽杯】file_session && 浅入opcode
Qt实战案例(55)——利用QDir删除选定文件目录下的空文件夹
牛客刷SQL--7
牛客刷SQL--6
postgresql之page分配管理(一)
微信UI在线聊天源码 聊天系统PHP采用 PHP 编写的聊天软件,简直就是一个完整的迷你版微信
8. How does the SAP ABAP OData service support the Create operation









