我正在学习javascript和json对象和数组。我的任务是迭代下面的数组:
{"6784":
{"OD":
[
{
"od_id":"587641",
"cl_type":"scl",
"cl_eye":"OD"
}
],
}
{"OS":
[
{
"od_id":"587641",
"cl_type":"scl",
"cl_eye":"OD"
}
],
}
}我尝试分别使用简单的for循环和jquery进行迭代,但都不起作用。条件是我们不知道任何密钥名称。
发布于 2017-07-19 19:07:28
如果您不知道密钥名称,可以使用Object.keys(json_obj)。
Object.keys(json_obj).forEach(function(key){
stuff
}发布于 2017-07-19 19:55:56
您的JSON不是有效的JSON。

有效的JSON应如下所示:

工作演示
var jsonObj = {
"6784": {
"OD": [{
"od_id": "587640",
"cl_type": "scl",
"cl_eye": "OD"
}],
"OS": [{
"od_id": "587641",
"cl_type": "scl",
"cl_eye": "OD"
}]
}
};
var keys = Object.keys(jsonObj);
for (var i in keys) {
var innerKeys = Object.keys(jsonObj[keys[i]]);
for (var j in innerKeys) {
console.log(jsonObj[keys[i]][innerKeys[j]][0].od_id);
}
}
发布于 2017-07-19 19:11:18
您可以使用:
Object.keys(Obj)来标识对象的属性,然后可以对其进行迭代以找到每个属性的值。
https://stackoverflow.com/questions/45188657
复制相似问题