定义 :简单来说,就是定义在函数内部的函数。
功能:
1.想要获取函数内部的变量。只需要再函数内定义一个函数,并返回出值,外部调用一下就OK
2.让这些变量的值始终保持在内存中
Tip:根据作用域规则,底层的函数没有声明变量,就会一直往上一层函数找,一直到window为止,如果没有则undefind,如果有,则会就近取到变量。
var count=10; //全局作用域 标记为flag1
function add(){
var count=0; //函数全局作用域 标记为flag2
return function(){
count+=1; //函数的内部作用域
alert(count);
}
}
var s = add()
s();//输出1
s();//输出2
闭包与内存管理
本文详细解释了闭包的概念,即定义在函数内部的函数,以及如何通过闭包获取函数内部变量并保持其在内存中的状态。通过示例代码展示了闭包如何帮助实现变量的持久化,以及作用域规则在变量查找过程中的应用。
847

被折叠的 条评论
为什么被折叠?



