let关键字的解决方法?
我怎么能得到这个
var i = 0;
var codes = [1, 2, 3];
for (var i = 0; i < codes.length; ++i)
{
setTimeout(function(){alert(codes[i]);},100);
}
不使用let
关键字到alert
1
,2
和3
?
或绑定元素上的事件(示例):
var i = 0;
var codes = [1, 2, 3];
for (var i = 0; i < codes.length; ++i)
{
$("div").eq(i).click(function(){
alert( codes[i] );
});
}
没有找到相关结果
已邀请:
5 个回复
荒劫娇噬
作为变量闭包的参数。
这是一个例子。
物崎巩
更多信息和好例子: https://developer.mozilla.org/en/JavaScript/Guide/Closures
桑娠贯涤
瞧叮
古擅坛犯
(可选)使用
语句获取更详细的代码:
或者如果您想要使用命名函数:
这两个示例都形成一个闭包,它引入了新的变量范围。或者,ES5具有可以在匿名函数上使用的Function.bind,但它尚未在所有浏览器中普遍支持。 (我在想IE。)