产生闭包的例子:
function getValue(){
var self = this;
for (var i = 0; i < 5; i++) {
self["getIndex" + i] = function(){
alert(i);
}
}
}
var arr = [11, 22, 33, 44, 55];
var a1 = new getValue(arr);
a1.getIndex1();//结果5
a1.getIndex2();//结果5
a1.getIndex3();//结果5
闭包解决:
function getValue(){
var self = this;
for (var i = 0; i < 5; i++) {
(function(j){
self["getIndex" + j] = function(){
alert(j);
}
})(i);
//在这里把外部参数i传进去,里面j接受参数i
}
}
var a1 = new getValue();
a1.getIndex0();//结果11
a1.getIndex1();//结果22
a1.getIndex2();//结果33
分享到:
相关推荐
详解JavaScript闭包问题 闭包是纯函数式编程语言的传统特性之一。通过将闭包视为核心语言构件的组成部分,JavaScript语言展示了其与函数式编程语言的紧密联系。由于能够简化复杂的操作,闭包在主流JavaScript库...
JavaScript闭包 JavaScript闭包 JavaScript闭包 JavaScript闭包
Javascript中有几个非常重要的语言特性——对象、原型继承、闭包。其中闭包 对于那些使用传统静态...本文将以例子入手来介绍Javascript闭包的语言特性,并结合一点 ECMAScript语言规范来使读者可以更深入的理解闭包。
Javascript 闭包完整解释
闭包(closure)是Javascript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实现。
资源名称:javascript闭包详解 中文word版 内容简介: Javascript中有几个非常重要的语言特性——对象、原型继承、闭包。其中闭包 对于那些使用传统静态语言C/C 的程序员来说是一个新的...
javaScript闭包技术资料
javascript 闭包实例下载
javascript闭包详解 javascript闭包详解 javascript闭包详解
闭包是ECMAScript (JavaScript)最强大的特性之一,但用好闭包的前提是必须理解闭包。闭包的创建相对容易,人们甚至会在不经意间创建闭包,但这些无意创建的闭包却存在潜在的危害,尤其是在比较常见的浏览器环境下...
javascript闭包高级教程,闭包内部实现机制的完美展现,值得研究,比较难。
JavaScript闭包与活动.pdf
使用XMLHTTPRequest实现自定义ajax。javascript闭包模式写法。值的学习
javaScript闭包技术资料。javaScript闭包技术资料。
JavaScript闭包深入理解.pdf
介绍了javascript闭包的高级使用方法实例,有需要的朋友可以参考一下
本文结合 ECMA 262 规范详解了闭包的内部工作机制,让 JavaScript 编程人员对闭包的理解从“嵌套的函数”深入到“标识符解析、执行环境和作用域链”等等 JavaScript 对象背后的运行机制当中,真正领会到闭包的实质。
对于初学者来说,理解Javascript闭包(closure)还是比较困难的,而撰写此文的目的就是用最通俗的文字揭开Javascript闭包的真实面目,让初学者理解起来更加容易一些。
JavaScript闭包(closure).pdf
JavaScript闭包研究及典型应用.pdf