我有稱爲myArray的陣列和被稱爲myVar的變量。 myVar變量保存一個值'myArray'(myVar的值等於數組名稱)。我可以以某種方式使用myVar變量訪問數組元素嗎?一些代碼來解釋我的意思:
var myArray = {1, 2, 3};
var myVar = "myArray";
謝謝!
我有稱爲myArray的陣列和被稱爲myVar的變量。 myVar變量保存一個值'myArray'(myVar的值等於數組名稱)。我可以以某種方式使用myVar變量訪問數組元素嗎?一些代碼來解釋我的意思:
var myArray = {1, 2, 3};
var myVar = "myArray";
謝謝!
這裏的關鍵是bracket notation。
如果myArray
是全球
var myArray = ["1","2","3"];
var myVar = "myArray";
console.log(window[myVar]);
最好使用一個命名空間
var myData = {};
myData.myArray = ["1","2","3"];
var myVar = "myArray";
console.log(myData[myVar]);
擊敗我7秒。該死。 (不是說這是一個競爭,只是發現它很有趣,我們的差異是數字與字母。;-) –
對於名稱空間的+1 – Chad
如果陣列(myArray
)是一個全局變量,那麼你可以使用window[myVar]
。如果它是局部變量,那麼唯一的方法是使用eval(myVar)
(或其類似物)。
arr = window[myVar] // assuming myArray is a global variable
arr[0] = 5 // same as myArray[0] = 5
「*我有一個名爲myArray *」的數組。在JavaScript中,數組不能有名字。你擁有的數組是匿名的。 –
顯示您的意思的僞代碼。 – epascarello
我在上面添加了一些代碼。 – user1856596