标签:
接触JS闭包来自于日常项目
1.for循环操作DOM层时,结果发现最终的I是在for循环结束后,click事件被访问到最后一次全局的值了
for(var i=0,blen=$("button").length;i<blen;i++){
(function(lockedIndex){
$("#button"+lockedIndex).click(function(){
console.log(lockedIndex);
})
})(i);
}
2.为何主流前端框架(Jquery,Zepto等)在引入后,都使用闭包结构
引用后,立即执行,使引入的代码立即执行,这样可以保证宿主环境中,随时可以得到该全局变量,如Jquery使用的$符号。在全局中可以被搜索到并执行。
最近正好在看SeaJS源码,顺带贴上
SeaJS源码分析
(function(global,undefined){
})(this)
标签:
原文地址:http://www.cnblogs.com/steven31/p/5325222.html