2013-06-19 6 views
0

자바 스크립트에서 반복자가 동일하지 않은 JSON 코드를 구문 분석하는 방법은 무엇입니까?아래 구문 분석 방법

var js= { 
    '7413_7765': { 
     availableColorIds: [ '100', '200' ], 
     listPrice: '$69.00', 
     marketingMessage: '', 
     prdId: '7413_7765', 
     prdName: 'DV by Dolce Vita Archer Sandal', 
     rating: 0, 
     salePrice: '$59.99', 
     styleId: '7765' 
    }, 
    '0417_2898': { 
     availableColorIds: [ '249', '203' ], 
     listPrice: '$24.95', 
     marketingMessage: '', 
     prdId: '0417_2898', 
     prdName: 'AEO Embossed Flip-Flop', 
     rating: 4.5, 
     salePrice: '$19.99', 
     styleId: '2898' 
    }, 
    prod6169041: { 
     availableColorIds: [ '001', '013', '800' ], 
     listPrice: '$89.95', 
     marketingMessage: '', 
     prdId: 'prod6169041', 
     prdName: 'Birkenstock Gizeh Sandal', 
     rating: 5, 
     salePrice: '$79.99', 
     styleId: '7730' 
    } 
} 

어떻게이 JSON을 javascript로 파싱 할 수 있습니까? 'prdName', 'listprice', 'salePrice'의 값을 자바 스크립트에서 원하십니까?

+6

JSON이 아닙니다 ... 이미 자바 스크립트입니다. – elclanrs

+0

@ user2244199 JSON 만 게시 할 수 있습니까? – Praveen

답변

2
var products = js; // more semantic 
for (productId in products){ 
    var product = products[productId]; 
    console.log (product.prdName , product.listprice, product.salePrice); 
} 

JS 정도로 products[productId]이 속성의 값을 반환하는 것이다 7413_7765, 0417_2898 및 prod6169041는,이 키는 var productId에 저장되고,이 경우에 객체의 첫 번째 레벨 객체의 속성을 통해 for (key in instance) 반복 이동된다.

개체 키 이름의 ""은 필요하지 않습니다.

+0

이것을 사용하면 어떻게 '0417_2898', prod6169041 및 '7413_7765'를 얻을 수 있습니까? –

+0

위의 내용을 시도했지만 정의되지 않았습니다. Ho wi는 '0417_2898', prod6169041 및 '7413_7765'가됩니다. – user2244199

+0

js는 JS 객체이고 for (객체의 객체) 반복기는 첫 번째 레벨 속성을 이동합니다.이 경우 7413_7765, 0417_2898 및 prod6169041에서이 키는 var productId, js [productId]는이 속성의 값인 – Edorka

0

이미 객체에 js을 할당했습니다.

당신은 JavaScript를 통해 루프를 반복하려고합니다., 언급 한대로 Edorka가 반복적으로 언급했습니다.