我有一个循环,我想在调用setTimeout函数,并传递一些参数。
函数被调用5次,但不是我所期望的说法是,在每次的ARG1等于(5)
我所期望得到ARG1 = 0时,函数被称为第一次和第二次ARG1 = 1的结局与ARG1 = 4。
我得到的是什么(ARG1 = 5)每次。
提前感谢。
foo();
function foo()
{
for (var i = 0; i < 5; i++)
{
setTimeout(
function(){
callingByTimeout(i)
}
,100)
}
}
function callingByTimeout(arg1)
{
alert(arg1)
//output for first time : 5
//output for second time : 5
//output for third time : 5
//output for fourth time : 5
//output for fifth time : 5
}
至于贾马尔:的| sjms |罗比Tendean