如何解析JSON以下

时间:2013-06-19 09:13:09

标签: javascript json

如何在JavaScript中解析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' 
    } 
}

如何在JavaScript中解析此JSON?我想在JavaScript中使用prdNamelistpricesalePrice的值?

2 个答案:

答案 0 :(得分:2)

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

js是一个Object,for (key in instance)迭代遍历第一级对象的属性,在本例中为7413_7765,0417_2898和prod6169041,这些键存储在var productId中,因此products[productId]将返回此属性的值。

请注意,对象键名中的“”不是必需的。

答案 1 :(得分:0)

您已将JSON分配给对象js

您正在尝试循环遍历JavaScript对象,正如Edorka所提到的那样迭代它。