2014-03-29 250 views
0

如何將數組映射到javascript對象中的特定鍵?將數組映射到javascript中的對象中的鍵

assignment = {}; 
assignment.tab = 'assign'; 
assignment.yrq = 'B343'; 
assignment.items = [1234,4567]; 

顯示的項目工程:

alert(assignment.items); //displays 1234, 4567 

但是,當我試圖通過項目迭代,我得到的索引號:

for (item in assignment.items) { 
    alert(item); //displays 0, then 1 
} 

回答

2

for循環的一個數組,你應該使用常規的for循環,而不是for-in,它通常用於對象,而不是陣列

for (var i=0; i<assignment.items.length; i++) { 
    alert(assignment.items[i]); 
} 
0

只要改變你的循環使用它作爲索引

for (itemIndex in assignment.items) { 
    alert(assignment.items[itemIndex]); 
} 
+1

你不應該用'用於遍歷一個_Array_因爲非指數也可以迭代。 –

+0

呼叫良好。以防萬一被添加到數組原型中,您不應該對數組使用'for..in'。 –

0

只需使用for循環

assignment = {}; 
assignment.tab = 'assign'; 
assignment.yrq = 'B343'; 
assignment.items = [1234,4567]; 

for(var i = 0; i < assignment.items.length; i++){ 
    alert(assignment.items[i]); 
} 
0

嘗試

for (item in assignment.items) { 
    alert(assignment.items[item]); //displays 1234, then 4567 
} 
相關問題