【发布时间】:2014-01-08 08:43:03
【问题描述】:
这是一段代码示例,类似于让我悲伤的代码:
for(var i=0;i<3;i++){
var Proof = true
if (i == 0){
Proof = false
//var CallBack = function(){alert(Proof);}; // true????
var CallBack = function(){alert(i);};
}
}
// Whatever happened to local scope? shouldn't CallBack be undefined now?
CallBack()// alert(3), should be 0?
CallBack 不是未定义的,它会发出 true 或 3 警报,有人可以向我解释一下是怎么回事让它像这样吗?是否有一些我缺少的本地关键字,或者 JS 没有范围?我没有使用任何框架,希望能得到一些帮助来解决这个问题,并正确地做这种事情......
【问题讨论】:
标签: javascript scope