2013-10-22 3 views
1
{ 
    "1370" : ["Tomai", "Grabowski", "Chebotko", "Egle"], 
    "2380" : ["Schweller", "Chen", "Tomai"], 
    "3333" : ["Schweller", "Chen", "The Devil"] 
} 

1370 [2]에 의해 chebotko에 액세스한다고 가정하지만 아무 것도주지는 않습니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까?이 json 배열을 어떻게 읽습니까?

이것은 내가 액세스하는 방법입니다.

$.getJSON("instructors.json", function(data) { 
    console.log(data); 
    // data is a JavaScript object now. Handle it as such 

}); 

답변

4

1370은 객체의 속성입니다. 객체 자체는 일종의 변수에서 참조되어야합니다. var myObject = { '1370': ... }, 또는 AJAX 요청의 응답 인 경우 콜백 함수의 입력 매개 변수로 액세스합니다.

alert(myObject['1370'][2]) // 'Chebotko' 
+0

내가 instructor.json라는 같은 디렉토리에 넣어 파일에서 그걸 얻기 위해 노력하고 그 텍스트는 모두 내부입니다 : 어느 쪽이 든, 당신은 그 속성, 먼저 개체 자체를 참조해야 그것. 필요하다면 변경할 수 있지만 내 콘솔은 Ojbect로만 인식됩니다. var 교수 =를 추가하면 작동하지 않습니다. –

+0

@MarlinHankin : 업데이트 된 질문에서 말한 것처럼'data'는 객체에 대한 참조입니다. 그것이 당신이 사용하고자하는 변수 이름입니다. 'alert (data [ '1370'] [2])'를 호출합니다. –

관련 문제