2010-08-22 2 views
20

JSONP를 통해 일부 데이터를 가져 오려고합니다. Firebug를 사용하면 데이터가 제대로 반환되는지 확인할 수 있지만 어떻게 구문 분석해야하는지 생각하는 데 어려움을 겪고 있습니다. 데이터 반환 실제로 중첩 된 배열을 올바른지? someFunction은 콜백 함수의 이름입니다. 데이터 모양은 다음과 같습니다.원격 서버에서 반환 된 JSONP 데이터를 구문 분석하는 방법

someFunction([ 
{ 
     "title":"Sample Title", 
     "link":"http://example.com", 
     "description":"Sample Description", 
     "publisher":"Sample Publisher", 
     "creator":"Sample Author", 
     "date":"Thu, 19 Aug 2010 12:41:29 GMT", 
     "num_pages":10, 
     "num_results":"10" 
}, 
]); 

올바르게 구문 분석하고 출력하는 방법에 대해 조금 혼란 스럽습니다.

답변

24

데이터를 구문 분석 할 필요가 없습니다. 이미 유효한 JavaScript 객체입니다. 예를 들어, someFunction 내의 첫 번째 객체에 대한 description 속성을 인쇄하려면

function someFunction(result) { 
    alert(result[0].description); // alerts "Sample Description" 
} 
2

올바른 이름과 올바른 인수를 사용하여 함수를 작성하십시오. JS 엔진이 구문 분석을 수행합니다.

function someFunction(data) { 
    // Now data is an Array, containing a single 
    // Object with 8 properties (title, link, etc) 
} 
+0

이 예제의 경우 8 개의 속성을 가진 객체가 하나 있지만 다른 서버가 여러 객체가있는 JSON을 반환 할 수 있습니다. console.log (data)를 사용하면 반환 된 객체의 목록을 가져 오는 것이 좋습니다. –

관련 문제