javascript - 使用 javascript 循环 JSON

标签 javascript json

这里有许多如何迭代 javascript 对象的示例。这对我来说实际上很好

    var text = '{"employees":[' +
'{"firstName":"John","lastName":"Doe" },' +
'{"firstName":"Anna","lastName":"Smith" },' +
'{"firstName":"Peter","lastName":"Jones" }]}';

obj = JSON.parse(text);
document.getElementById("demo").innerHTML =
obj.employees[1].firstName + " " + obj.employees[1].lastName;

但没有弄清楚如何迭代 obj 中的值。尝试过这样的

    for(var k in obj) {
    if (obj.hasOwnProperty(k)) {
        if (obj.hasOwnProperty(k)) {
             out +=("Key is " + k + ", value is" + obj[k].firstName);
        }
    }
}

但失败了。正如您从示例中看到的那样。如果有人可以帮助使用一些 javascript 代码来迭代 JSON 键值对?

最佳答案

解析后,您的 obj 变量引用一个带有 employees 属性的对象,该属性引用一个数组。所以:

obj.employees.forEach(function(employee) {
    // ...
});

var i, employee;
for (i = 0; i < obj.employees.length; ++i) {
    employee = obj.employees[i];
    // ...
}

...或 this answer 中概述的任何其他方法.

关于javascript - 使用 javascript 循环 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32074415/

相关文章:

java - JSON 解析问题未解决

javascript - AngularJS 中的 XML 到 JSON,无需外部库

json - 解析 swift 3 中的嵌套 Json 数据

json - 无法将 float32 值解码为字符串

php - json_decode 未通过 curl 调用返回正确的 api 响应 php 数组

javascript - react 15, typescript 2.2.1。如何为功能/无状态组件转换类型?

javascript - 如何将面板添加到仪表板的特定列?

javascript - fs.createRead/WriteStream() 与 fs.promises.open()

javascript - 如何根据所选选项Javascript更改html中的值

javascript 转到herf并滚动到元素