我想創建多個函數,根據數據表中寫入的內容做不同的事情,並將它們存儲在對象中供以後使用。如何使用動態內容創建函數並將它們存儲在對象中?
讓我們看看這個簡單的例子:
var arrayPl = [];
function myFunction() {
var carNames = ["Volvo", "Nissan"];
var counter = 0;
for (var i in carNames) {
arrayPl[counter] = function() {
alert(carNames[i]);
};
counter++;
}
}
myFunction();
arrayPl[0]();
在這裏,我想因爲有car names
創造儘可能多的功能,並將它們保存在一個對象arrayPl
,我可以從調用這些函數後來。
現在顯然這個例子並沒有解釋爲什麼我需要這樣做 - 但至少它顯示了我的問題,因爲第一個函數arrayPl[0]();
給了我第二個汽車的名字,而不是第一個。
解釋這個背後的原因現在對我來說太複雜了,不是那麼重要(Adobe LiveCycle中的對話框) - 我只是想知道我的問題是否可能,如果是的話。
* 「我只是想知道什麼我問的是一般可能」 *是的。你有什麼是正確的開始,重複解釋了爲什麼它現在還不能工作,以及如何解決它。 –
thx,我之前沒有發現重複! –