关于闭包
来源:互联网 发布:淘宝虚拟现实vr购物 编辑:程序博客网 时间:2024/06/05 08:44
关于闭包,有很多的文档,其实说白了就是函数里面的返回值是另外一个函数,什么是闭包?这就是闭包!
我们知道,在js中,我们可以把函数看成一个盒子,从盒子里面访问外部的变量是可以的,但是怎么从盒子外面访问到里面的变量呢?
这时,就要用到闭包啦!!
function animate(){
var name = "animate";
function cat(){
var color = 'yellow';
alert(color);
return color
}
return cat();
}
animate();
如上例子,我们调用animate(),就能访问cat()函数里面的color变量;这就是闭包,是不是很简单
下面来说一下闭包一般在啥时候用
1,访问函数内部的变量,如上所示
2.用来保存变量
function animate() {
var name = "animate";
var n = 909;
nadd = function() {
n = n + 1;
};
function cat() {
var color = 'yellow';
alert(n);
return n;
};
return cat;
}
var fns = animate();
fns();
nadd();
fns();
如上所说,animate的变量n;会保存,不会销毁,所以要慎用,而且会占用内存
阅读全文
1 0
- 关于闭包
- 关于C#闭包
- 关于闭包
- 关于闭包
- 关于闭包
- 关于闭包
- 关于闭包
- 关于闭包--1
- 关于闭包
- JavaScript关于闭包
- 关于闭包
- 关于JS闭包
- 关于闭包
- 关于闭包
- 关于闭包
- 关于闭包
- swift关于闭包
- JavaScript关于闭包
- Shiro授权详细解析
- Android打造流畅九宫格抽奖
- MapReduce运行模式-本地模式配置
- 将大数据写入数据库
- Shiro几大拦截器
- 关于闭包
- bzoj 1552: [Cerc2007]robotic sort && bzoj 3506: [Cqoi2014]排序机械臂(splay区间翻转)
- html5手机网站需要加的那些meta标签,手机网站自适应
- java基础——多维数组
- 正则表达式
- 【maven】web项目不需要web.xml,maven打包报错
- 《机器学习实战》学习笔记(一)
- PS学习—人像处理
- C语言恶作剧(1):交换鼠标左右键