犀牛——第8章函数 8.6闭包
2015-09-03 01:52
387 查看
8.6闭包
闭包是指函数变量被隐藏于作用域内,它们可以捕获到局部变量(和参数),并一直保存下来。例子:
function counter(){
var n = 0;
return{
count:function(){return n++;};
reset:function(){n = 0;};
};
}
var c = counter(), d = counter(); //创建两个计数器
c.count(); //=>0
d.count();//=>0:它们互不干扰
c.reset();//reset()和count()方法共享状态
c.count();//=>0:因为我们重置了c
d.count();//=>1 :而没有重置d
相关文章推荐
- 给定一个存放整数的数组,重新排列数组使得数组左边为奇数,右边为偶数
- Clustered Shading架构实现步骤
- J2SE——JDK安装和环境变量配置
- hdu4462 Scaring the Birds || 2012 Asia Hangzhou Regional Contest || 简单暴力
- 重写、覆盖、重载、多态几个概念的区别
- Leetcode #232 Implement Queue using Stacks
- wcf利用IDispatchMessageInspector实现接口监控日志记录和并发限流
- 通过box盒子模型给元素内容设置居中
- 开发日记:接口开发设计
- PHP date_default_timezone_set()函数之中国时区设定
- Longest Substrings Without Repeating Characters
- [LeetCode#43]Multiply Strings
- CSS3中的字体rem
- HDU1031 - Design T-Shirt (水题 模拟)
- Python中的元类(metaclass)
- 08-27作业
- Java项目图标前面有红色叹号
- Fibonacci(斐波那契)序列学习总结
- 修正Lilypond生成简谱工具
- 前端工程师技能之photoshop巧用(从效果图到雪碧图)2——测量篇