关于js中的闭包
2015-09-22 21:47
639 查看
function Foo() { var i = 0; return function() { console.log(i++); } } var f1 = Foo(), f2 = Foo(); f1(); f1(); f2();
运行结果是0 1 0
我的理解:在执行第一个f1()时,执行完函数,作用域不销毁,输出i=0,i变成1,接着执行第二个 f1(),输出i=1,变成2;执行f2(),输出i=0
相关文章推荐
- 前端开发必须掌握的七个JavaScript技巧
- jetty JSP support not configured
- JavaScript学习总结(四)function函数部分
- JavaScript返回上一页并自动刷新
- ExtJs4得知(五岁以下儿童)主要的Ext分类
- JavaScript学习总结(三)BOM和DOM详解
- JS立即执行函数
- 用Canvas+Javascript FileAPI 实现一个跨平台的图片剪切、滤镜处理、上传下载工具
- js字符串函数
- JavaScript学习总结(二)数组和对象部分
- JavaScript学习总结(一)基础部分
- JavaScript设计模式一:工厂模式和构造器模式
- EXTJS 自学2 使用面板
- Extjs 自学1
- An exception has occurred while using the formatter ‘JsonMediaTypeFormatter’ to generate sample
- JavaScript中关键字(this)
- jqMobi指南系列教程是《 jqMobi Javascript Frameworks Cheat Sheet》 的中文版
- js中的eval方法转换对象时,为何一定要加上括号?
- scrapy生成json中文乱码解决
- JSP页面通过jstl进行变量累加