处理多级json

handling multi level json

本文关键字:json 多级 处理      更新时间:2023-09-26

我有这两个JSON对象

"field_contact_phone": {
    "el": [
        {
            "value": "+30 123455",
            "format": null,
            "safe_value": "+30 123455"
        }
    ]
}

第二个

"field_contact_phone": {
    "el": [
        {
            "value": "12342352352",
            "format": null,
            "safe_value": "12342352352"
        },
        {
            "value": "5454364576547",
            "format": null,
            "safe_value": "5454364576547"
        }
    ]
}

尽管我能够用成功解析第二个对象

var popup = 'Τηλέφωνο: '+data.field_contact_phone.el[0].value;

当我试图解析第一个时,我得到了错误

未捕获的TypeError:无法读取处未定义的属性"el"file:///android_asset/www/main.js:390

您的JSON经过验证是正确的,可以在我这边工作。只是你需要用大括号包装内容(请参见下文)

var v1={
    "field_contact_phone": {
        "el": [
            {
                "value": "+30123455",
                "format": null,
                "safe_value": "+30123455"
            }
        ]
    }
};
var v2={
    "field_contact_phone": {
        "el": [
            {
                "value": "12342352352",
                "format": null,
                "safe_value": "12342352352"
            },
            {
                "value": "5454364576547",
                "format": null,
                "safe_value": "5454364576547"
            }
        ]
    }
};
console.log(v1.field_contact_phone.el[0].value); // +30123455
console.log(v2.field_contact_phone.el[0].value); //12342352352