标签:读取 链接 理解 res 使用 内存泄漏 而在 return rip
闭包简单理解就是能够读取其他函数内部变量的函数,而在javascript中只有内部函数可以读取函数的内部变量,所以我们学习javascript时可以这样理解,函数A中嵌套了一个函数B,然后我们用函数B来取得函数A的内部变量,那么这个函数B就是一个闭包。
闭包的实质就是将函数内部和外部链接起来的桥梁。
function A(){ var n=2; function B(){ alert(2); } return B; } var result=A(); result();
闭包的主要用途:
1.获取函数内部变量。(如上述例子所示)
2.让这些变量的值始终保存。
3.为节点绑定事件时,在事件函数中使用当次循环的值或节点,而不是最后一次循环的值或节点。
4.可以设置私有属性,并且利用特权访问这些属性。
var foo = function(){ var name = ‘fooName‘; this.getName = function(){ return name; }; } var foo1 = new foo(); foo1.name;//undefined foo1.getName()//fooName
但是闭包会导致内存泄漏等一系列问题,所以应该减少闭包的使用。
标签:读取 链接 理解 res 使用 内存泄漏 而在 return rip
原文地址:http://www.cnblogs.com/facous/p/6031215.html