【发布时间】:2011-12-06 15:19:27
【问题描述】:
我正在尝试在给定可变项目列表的情况下运行多个计时器。代码如下所示:
var list = Array(...);
for(var x in list){
setInterval(function(){
list[x] += 10;
console.log(x + "=>" + list[x] + "\n");
}, 5 * 1000);
}
上面代码的问题是,唯一被更新的值是列表末尾的项目,乘以列表中的项目数。
谁能提供解决方案和解释,让我知道为什么会这样?
【问题讨论】:
标签: javascript for-loop closures setinterval