如何循环遍历JSON对象?

5

我有一个JSON对象:

{"time":"123456789", "raw":"chat_history", "data":{
"msg":[
 {"time":1111111111, "user":"user1", "text":"text from user1"},
 {"time":2222222222, "user":"user2", "text":"text from user2"},
 {"time":3333333333, "user":"user3", "text":"text from user3"},
 {"time":4444444444, "user":"user4", "text":"text from user4"}
]
}}

我需要创建一个FOR循环来遍历data.msg的元素并打印出来:

我会使用FOR循环打印这些结果:

11111111111 - user1 - text from users1
22222222222 - user2 - text from users2
33333333333 - user3 - text from users3
44444444444 - user4 - text from users4

你能帮我吗?

非常感谢。

2个回答

5
for(var i = 0; i < data.msg.length; i++)
{
    var row = data.msg[i];
    print(row.time + ' - ' + row.user + ' - ' + row.text);
}

2
这基本上是一个代码风格问题。有些人喜欢将其放在新行上,而有些人则喜欢将其放在同一行上。这并没有什么区别。 - ThiefMaster

0
var msg = yourJsonObject.data.msg;

for (var i = 0, len = msg.length; i < len; i++) {
  // document.write only for example
  document.write(msg[i].time + ' - ' + msg[i].user + ' - ' + msg[i].text);
}

读取msg.length不是一个函数调用,因此没有必要将其分配给另一个变量。只需在循环条件中使用i < msg.length即可。 - ThiefMaster

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接