2014-06-18 3 views
0

iterate에있는 multiple values의 방법에 대해 혼란스러워합니다. 예를 들어다중 배열 값에 대한 루프

: values.categories[0].num[0].entry[0].label;

내가 종류, 납입 및 항목을 반복하기 위해 세 가지 for 루프를 작성해야합니까.

categories[0]은 항상 1st position을 식별하지만 일반 categories[i]을 찾고 있습니다.

루프를 위해 세 개를 쓸지 또는 더 나은 옵션을 만들지 여부를 알려주세요.

이 내가 시도 것입니다 :

var result = []; 
      for (var i = 0; i < categories.length; i++) { 
       var abc = categories[i].num; 
       for (var j = 0; j < abc.length; j++){ 
        var def = num[i].entry; 
       } 
       for(var k = 0; k < def.length; k++){ 
        var ghi = entry[i].label; 
        result.push(ghi) 
        console.log(result); 
       } 
      } 
+0

어떤 코드를 고맙게 여길 것입니까? – chandu

+1

'n'치수가있을 때 모든 요소에 도달하려면 루프 또는 이에 상응하는 것으로 중첩 된 'n'을 써야합니다. – Diode

+2

깊이가 알려지지 않은 경우 재귀 함수를 사용할 수 있습니다. –

답변

0

당신이 JQuery와의 각 기능을 사용할 수 있습니다.

$.each(categories, function(ci, num) { 

    // This set the index of the array in ci and the value in num = categories[ci] 

    $.each(num, function(ni, entry) { 

     // etc ... 

    }); 

}); 

반복을 중지하려면 콜백 함수에서 false를 반환 할 수 있습니다.