简单理解js的闭包
2013-12-23 20:52
435 查看
js中的闭包概念常常让学习js的新人烦恼不已,但是即使不知道闭包为何物的js新手一样在不知不觉中使用这个概念。
简单的说就是js的function被定义的时候,所有“能看到的对象”,这个function内部都是可见的,可以访问的。
举例而言:var globelvar = {};function function1(){ var localvar1; function function2(){ var localvar2; function function3(){ var localvar3; } globelvar.function3 = function3; } function2(); globelvar.function2 = function2;}function1();
function function4(){ var localvar4;}变量 globelvar 四个方法都可以访问到。变量 localvar1 可以被 function1 function2 function3 三个方法访问到,function4无法访问。
变量 localvar2 可以被 function2 function3 访问到,function1 function4无法访问。
变量 localvar3 只可以被function3访问到。
变量 localvar4 值可以被function4访问到。
这种变量的可见性可以概括为方法定义的时候,在方法的位置能"看到"的变量,这个方法都是可以访问的。
这种可见性就是闭包。
闭包的现象和概念看上去就这么简单。
简单的说就是js的function被定义的时候,所有“能看到的对象”,这个function内部都是可见的,可以访问的。
举例而言:var globelvar = {};function function1(){ var localvar1; function function2(){ var localvar2; function function3(){ var localvar3; } globelvar.function3 = function3; } function2(); globelvar.function2 = function2;}function1();
function function4(){ var localvar4;}变量 globelvar 四个方法都可以访问到。变量 localvar1 可以被 function1 function2 function3 三个方法访问到,function4无法访问。
变量 localvar2 可以被 function2 function3 访问到,function1 function4无法访问。
变量 localvar3 只可以被function3访问到。
变量 localvar4 值可以被function4访问到。
这种变量的可见性可以概括为方法定义的时候,在方法的位置能"看到"的变量,这个方法都是可以访问的。
这种可见性就是闭包。
闭包的现象和概念看上去就这么简单。
相关文章推荐
- js的闭包的简单理解
- 我理解的简单的JS闭包。。。。
- 简单说说我理解的js中的闭包
- javascript简单理解js闭包
- JS中的闭包简单理解
- javascript深入理解js闭包
- 深入理解js中的闭包
- javascript深入理解js闭包
- javascript深入理解js闭包
- js中闭包的理解二
- javascript深入理解js闭包
- javascript深入理解js闭包
- JS - 闭包,回调,立即执行函数表达式简单实现
- 我对js中的闭包的理解
- JS 闭包的理解
- 一个简单的例子理解在JS原型继承中原型链是如何运作的
- 写四个理解JS闭包的例子
- javascript深入理解js闭包
- 对js 面对对象编程的一些简单的理解
- 深入理解js中的闭包