2011-06-08 92 views
1

如何將動態屬性添加到對象,例如我使用下面的代碼將索引(index)屬性添加到myObjindex是一個變量。如何將動態屬性添加到JavaScript中的對象?

var myObj={}; 
for(var index=0; index<10; index++){ 
    myObj[index]='my'+index; 
} 

但它不工作...

+0

這應該可行,但你不清楚你期望的結果是什麼。 – Pointy 2011-06-08 14:49:12

+0

這與JavaScript事件或jQuery無關。而且,據我所知,它可以工作。有什麼問題? – lonesomeday 2011-06-08 14:49:50

回答

1

如果你真的什麼是「MyObj中」能有像「my0」,「MY 1」,屬性通過「MY10」,那麼是什麼你想要的是

for (var index = 0; index < 10; ++index) 
    myObj['my' + index] = something; 
0

而不是用{}創建一個對象,因爲你正在創建一個簡單的數組。

var myObj=[]; 
for(var index=0; index<10; index++){ 
    myObj[index]='my'+index; 
} 
0

願你可以嘗試使用:

myObj[index+""]='my'+index; 
0

你不能在你使用字符串以同樣的方式在JavaScript中使用數字作爲屬性名稱。

使用myObj [1]將返回您正在查找的屬性值,但myObj.1不會。

最好使用推薦的@Pointy和@sudimail這樣的字符串。