2011-08-08 120 views
-1

爲什麼第二個FOR循環不起作用?如何將JavaScript數組值作爲循環的變量?

toget = new Array("var18", "var4", "var43"); 

for (var i=0; i < toget.length; i++) { 

    for (var x=0; x < result.toget[i].list.length; x++) { 
    alert(x); 
    } 

} 

如果我這樣做:

for (var i=0; i < toget.length; i++) { 

    for (var x=0; x < result.var18.list.length; x++) { 
    alert(x); 
    } 

} 

它的工作原理,但是這是不正確的方法。

我需要在toget數組中的值變成變量來處理它們在第二個FOR循環中。

任何想法?謝謝。

+0

你能澄清什麼是 「結果」,甚至更好? – shoebox639

+1

「result.var18.list.length」是什麼? –

+0

您的代碼缺少結果。只有在包含所有相關代碼之前,才能猜出答案。 – jfriend00

回答

3
for (var i = 0; i < toget.length; i++) { 
    for (var x = 0; x < result[toget[i]].list.length; x++) { 
     alert(x); 
    } 
} 
2

嘗試jQuery的each環比for循環

toget = new Array("var18", "var4", "var43"); 

$.each(toget, function(i){ 
    $.each(result[toget[i]].list, function(x){ 
     alert(x); 
    }); 
}); 
+0

'result.toget [i] .list'在這裏不正確。它應該是'result [toget [i]] list'。 –

+0

@火箭 - 錯過了,無論如何,我固定它謝謝。 – ShankarSangoli

+0

我不知道$ .each()函數。它對我來說非常有用。 –