嗨Javascript /下划线大师..
假设我从服务器收到一个json对象,该对象有一个嵌套为其属性之一的匿名数组...如何在下划线_.each方法中循环遍历该数组?
这是我的json对象:
"onlineUsers": [
{
"Id": "users/2",
"Name": "Hamish",
"LatestActivity": "2013-01-17T04:02:14.2113433Z",
"LatestHeartbeat": "2013-01-17T04:02:14.2113433Z"
},
{
"Id": "users/3",
"Name": "Ken",
"LatestActivity": "2013-01-17T03:45:20.066Z",
"LatestHeartbeat": "2013-01-17T04:04:34.711Z"
}
]
如何修改此功能以打印出名称?
_.each(onlineUsers, function(user){log(user.name);});
这是打印出嵌套对象的实际集合,显然是因为它们是onlineUsers的嵌套数组中的元素...如果匿名传入,不知道如何到达该数组循环...
谢谢, 麦高。
答案 0 :(得分:14)
您从服务器收到的JSON是无效的JSON。该数组需要一个属性名称,例如:
onlineUsers = { names: [{name : "Joe"}, {name : "bloggs"}]}
然后你可以这样做:
_.each(onlineUsers.names, function(user){log(user.name);});
答案 1 :(得分:2)
对象内的匿名数组无效json,因此您将无法对其进行解析。
给数组命名或删除外部对象。