2013-01-24 1 views
1

구문 문제가 있습니다. 다차원 객체 및 배열에 관한 수백 개의 게시물을보고 있었으므로 찾고있는 것을 찾을 수 없습니다. 나는 기본적으로 많은 수의 프리셋으로 데이터베이스를 채울 필요가 있으며 배열 (또는 2 번째 객체)에 설정하는 방법을 찾고 있으므로 루프를 통해 데이터베이스에 삽입 할 수 있습니다.문자열 색인 및 결과 루프를 사용하여 2 차원 객체를 만드는 방법

데이터는 개체 및 액세서리의 간단한 목록입니다. 예 :

Door -> Handle 
      Letterbox 
      Cat Flap 
      Hinges 
      Lock 
Window -> Sill 
      Frame 
      Lock 
      Handle 

나는 다음과 같은 기능을 원하는 결과를 통해 루프 및 항목 및 액세서리 삽입 ("항목은"모든 데이터를 보유하고있는 객체입니다) :

for (var i = 0; i < items.length; i++) { 
    var item = items[i]; 
    insertItem(item,'','Object'); 

    for (var b = 0; b < item.length; b++) { 
     var accessory = item[b]; 
     insertItem(item,accessory,'Accessory'); 
    } 
} 

내 질문은, 내 데이터를 개체에 넣을 것이라고 내 루핑 함수를 데이터를 통해 순환 할 것이라고?

+2

에 액세스 할 수 있습니까? –

답변

0

어쩌면 개체 리터럴을 사용할 수 있습니까? 데이터 또는 (또는 둘 다)에 액세스하는 방법에 대한 구조화에 대한 질문은

var house = new Object(); 
    house = { 
     "door" : { 
      "handle" : true, 
      "letterbox" : true, 
      "catFlap" : true, 
      "hinges" : true, 
      "lock" : true 
     }, 
     "window" : { 
      "sill" : true, 
      "frame" : true, 
      "lock" : true, 
      "handle" : true 
     } 
    }; 

그럼 당신은 for...in 루프

for(var item in house){ 
    for(var accessory in house[item]){ 
     if(house[item][accessory]){ //announce what was found 
      alert(accessory); 
     } 
     house[item][accessory] = false; //take accessory away 
     house[item].newAccessory = true; //Add an accessory 
    } 
} 
+0

다음 줄에 객체 리터럴을 사용하는 경우'var house = new Object();'는 불필요합니다. –

+0

사실입니다.하지만 객체 리터럴이 무엇인지 전혀 알지 못한다고 생각하여 자세한 설명을하기로했습니다. –

+0

하지만 두 번째 할당으로 변수의 초기 값을 덮어 쓰는 것입니다. 변수에'5 '를 어떻게 대입 하는지를 보여주고 싶다면'var num = 0; num = 5;'? 도움이되는 것보다 혼란 스럽다. –

관련 문제