2014-02-26 265 views
1

所以我有這個簡單的對象連接字符串

var data = {}; 

,我想用鍵值對,以填補它在一個for循環這樣

for(var i=0; i<n; i++){ 
    $.extend(
     data, 
     { 
      'a'+toString(i): someFunction(i), 
      'b'+toString(i): someFunction(i) 
     }; 
    ); 
}; 

,但似乎像定義密鑰時不可能連接字符串。 有沒有什麼乾淨的方式去做我所需要的,因爲我覺得我的方法從一開始就是跛腳的。

謝謝。

+0

'「一」 +的toString(我)'不會做你認爲它一看here。 – georg

回答

5

您需要使用bracket notation作爲member operator因爲鍵是動態的

for (var i = 0; i < n; i++) { 
    data['a' + toString(i)] = someFunction(i); 
    data['b' + toString(i)] = someFunction(i); 
} 
6

使用此語法

for (var i = 0; i < n; i++) { 
    data['a'+toString(i)] = someFunction(i); 
} 

要使用你需要使用方形的對象的非文本鍵值括號表示法。這使您可以創建動態密鑰。

有在方括號更多信息