Nodejs解析嵌套的json数组

时间:2016-11-01 17:19:13

标签: javascript node.js

这是一个简单的代码,我想解析values json数组并从中打印数据,

var data = {
    "mobileNumber": "3",
    "userContacts": {
        "values": [{
            "nameValuePairs": {
                "contactName": "aaaaa",
                "contactPhone": "111111"
            }
        }, {
            "nameValuePairs": {
                "contactName": "bbbbb",
                "contactPhone": "222222"
            }
        }]
    }
};

var jsonArray = JSON.parse(data.userContacts.values);

for (var i=0; i<jsonArray['values'].length; i++){

    //print contactName and contactPhone from nameValuePairs

}

我在jsFiddle上创建this link来测试

3 个答案:

答案 0 :(得分:2)

您不必使用JSON.parse。你已经有了JSON。

您可以循环播放所需内容。

for (var i=0; i<data.userContacts.values.length; i++){
    console.log(data.userContacts.values[i].nameValuePairs.contactName,
                data.userContacts.values[i].nameValuePairs.contactPhone)
}

https://jsfiddle.net/ffv4grk7/

另外,请阅读this,了解有关JSON.parse工作原理的详情。

答案 1 :(得分:0)

或者只是:

data.userContacts.values.forEach(x => {
  console.log(x.nameValuePairs.contactName, x.nameValuePairs.contactPhone);
});
// aaaaa 111111
// bbbbb 222222

答案 2 :(得分:-1)

使用此代码,您将获得姓名和电子邮件

 for(i in data.userContacts.values) {
   x+=data.userContacts.values[i].nameValuePairs.contactName+"<BR>";
   x+=data.userContacts.values[i].nameValuePairs.contactPhone+"<BR>"; }
   document.getElementById("r").innerHTML = x;