这是我的困境。
我有这段代码:
var list_of_numbers = new Array();
function AddToArray(func)
{
// Add to the *beginning* of the array
// essentially reversing the order
list_of_numbers.unshift(func);
}
function DisplayNumber(num)
{
document.write(num);
}
for(var i=0;i<5;++i)
{
AddToArray(function() { DisplayNumber(i); });
}
for(var i=0;i<5;++i)
{
list_of_numbers[i]();
}
应该发生的事情是 5 个内联函数将被添加到数组中 - 每个都获取i
. 然而,这不会发生。
预期输出:
43210
实际输出:
01234