而不是試圖創建&分配動態命名變量,如果你願意的話,我會想到更多array
的array
。換句話說,創建一個包含所有數組的數組,你想:
var collections = []; // Literal notation for creating an array in JS
從這裏,它是使這個陣列中創建的每個值自己的陣列的一個問題:
var n = 10; // Total amount of arrays you want
for (var i = 0; i < n; i++) {
var values = [];
// Have another loop that fills in the values array as expected
collections.push(values); // Each element at collections[i] is its own array.
}
如果你真的需要命名的元素,你可能會做一些非常相似的事情,而不是僅僅使用對象{}
,並用你創建的名字引用每個元素。
var collections = {}; // Literal notation for an object in JS
var n = 10; // Total amount of arrays you want
for (var i = 0; i < n; i++) {
var values = []; // Literal notation for an array in JS
// Fill in the values array as desired
var name = 'arr' + i; // How you'll refer to it in the object
collections[name] = values;
}
我認爲前雖然,因爲它聽起來並不像你需要對你的陣列明確的名稱,而只是希望陣列的多層。
'if'不是一個循環。不要試圖產生叫做'foo1','foo2','foo3',...的變量。改用數組'foo [i]'。 – melpomene 2013-02-26 03:34:25
數組是否在全局命名空間 – 2013-02-26 03:35:29
你需要一個二維數組,或者你想在變量中生成數組 – 2013-02-26 03:35:32