有人可以帮我解决一个JavaScript谜题吗?JavaScript - 在不调用函数的情况下在函数中保存变量
考虑下面的JavaScript代码:
var a[];
for (i=0;i<10;i++)
{
a[i] = function(){alert ("I am " + i);};
}
a[5]();
现在很明显,最后一行将导致警报读“我是9”,而不是“我5”,因为i
值9在for
循环的末尾。
我想要警报打印“它应该是什么”,但不改变我从数组中调用函数的方式,即 - 没有参数。
收到的提示:尝试定义调用另一个函数的函数。
请帮忙!!!谢谢:-)
非常感谢你! – 2011-01-30 16:36:46