有人可以幫我解決一個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