JS闭包-应用-通过return的函数调取父函数内部的变量。 相当于一个反向的委托。

JS闭包
闭包是指有权访问另一个函数作用域中的变量的函数
闭包:f2可以读取f1中的变量,只要把f2作为返回值,就可以在f1外读取f1内部变
原因:f1是f2的父函数,f2被赋给了一个全局变量,f2始终存在内存中,f2的存在依赖f1,因此f1也始终存在内存中,不会在调用结束后,被垃圾回收机制回收。
function f1(){
var n = 123;
function f2(){ //f2是一个闭包
alert(n)
}
return f2;
}

js链式作用域:子对象会一级一级向上寻找所有父对象的变量,反之不行。

发布了55 篇原创文章 · 获赞 4 · 访问量 1398

猜你喜欢

转载自blog.csdn.net/BowenXu11/article/details/105272753