2016-08-18 155 views
1

我現在有一些隨機JSON數據,因此我無法使用standrad方式來做到這一點,不能一個一個地做。Javascript:通過for循環將數據存儲在變量中

例如,如果我要去存儲特定數據陣列我會做類似下面

var tester = []; // store their names within a local array 

for(var k = 0; i < data.result.length; i++){ //maybe 6 

    for(var i = 0; i < data.result.data.length; i++){ //maybe 30 times in total 

     tester.push(data.result[k].data[i].someNames); 
    } 

} 

但因爲我無法預測我有多少組數據有我真的不能這樣做

var tester = []; 
var tester2 = []; 
var tester3 = []; 
var tester4 = []; 

    for(var i = 0; i < data.result.data.length; i++){ //maybe 30 times in total 

     tester.push(data.result[0].data[i].someNames); 
     tester2.push(data.result[1].data[i].someNames); 
     tester3.push(data.result[2].data[i].someNames); 
     tester4.push(data.result[3].data[i].someNames); 


     } 

如果有更好的方法使用for循環來存儲這些數據嗎?

+0

也許會使用while循環,直到數據不足爲止? – davidhu2000

+1

雙'for'循環是你最好的選擇。另外,對於(var i = 0; i Derek

回答

3

使tester一個2維數組並使用嵌套循環。

var tester = []; 

for (var i = 0; i < data.result.length; i++) { 
    var curTester = []; 
    var result = data.result[i]; 
    for (var j = 0; j < result.data.length; j++) { 
     curTester.push(result.data[j].someNames); 
    } 
    tester.push(curTester); 
} 

一些基本原則:

  1. 你發現自己定義與數字後綴的變量任何時候,他們也許應該是一個數組。
  2. 當你不知道你會有多少東西時,把它們放在一個數組中。
+0

完美的方法。 – anson920520