javascript中的闭包以及闭包应用
2024-10-01 12:08:42
闭包简单理解就是能够读取其他函数内部变量的函数,而在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
但是闭包会导致内存泄漏等一系列问题,所以应该减少闭包的使用。
最新文章
- 以bank account 数据为例,认识elasticsearch query 和 filter
- python之最强王者(3)——变量,条件、循环语句
- Android 网络框架 volley源码剖析
- qt creator中使用qwt插件
- java中的线程创建和使用
- Opencv 函数
- ReactiveCocoa v2.5 源码解析 之 架构总览
- C# 执行存储过程
- Memcahce(MC)系列(三)Memcached它PHP转让
- hbase thrift 访问队列
- 【转】javascript 浮点数运算问题
- 写入一个html文件时的编码要求
- tomcat 常用命令 网上找的资料
- 关于.NET字符串驻留的问题
- NoSuchMethodError: The getter 'inputs' was called on null.
- Jmeter 通过json Extracted 来获取 指定的值的id
- jquery 选择对象随心所欲,遍历数组更是易如反掌
- (转)C#读取MAC的几种方法
- 【Algorithm】冒泡排序
- php分享二十六:读写日志