json字符串解析错误

时间:2012-10-19 14:52:31

标签: jquery json

我有一个Json字符串 -

var RetailerData = {};

// The object that the JSON string should represent, can use this as it is if you want.

RetailerData.webSites = [
{
    id: 1,
    text: 'J.Crew',
    image: 'images/retailer-logo/jcrew.png',
    extra: 'www.jcrew.com'
},
{
    id: 2,
    text: 'GAP',
    image: 'images/retailer-logo/gap.png',
    extra: 'www.gap.com'
}];

我想使用jquery $.parseJSON 来解析它以获取每个值。我用

试了一下
var obj = $.parseJSON(RetailerData.webSites);

$.each(obj, function() {
    console.log(this['id']);
});

但每次尝试都会出现连续错误。任何人都可以告诉你这样做的正确方法。 提前谢谢。

2 个答案:

答案 0 :(得分:0)

您正在尝试将JavaScript对象转换为JavaScript对象,这是没有意义的!你能做的是

var str = JSON.stringify(RetailerData.webSites);

并使用str将您的数据传输到其他位置。然后使用

var obj = JSON.parse(str);

在原始对象被其他来源修改(或不修改)之后将其恢复原状。

答案 1 :(得分:0)

使用parseJSON将jsonString解析为json对象。

但是在你的情况下RetailerData.webSites已经是一个json对象,不需要解析它。

var obj = RetailerData.webSites;

$.each(obj, function() {
    console.log(this['id']);
});