你好,我只想知道如何迭代这个数组
```
[
{
"0": {
"player_id": "138",
"player_name": "Pring",
"profile_image": "",
"score_card": [
"0"
],
"total_score": 22
},
"1": {
"player_id": "4",
"player_name": "Poring 12",
"profile_image": "",
"score_card": [
"0",
],
"total_score": 0
},
"date": "2017-09-21",
"start_time": "17:40:00",
"end_time": "18:00:00"
}
]
```
或者也许用 lodash 按玩家分组?我正在请求一个API,但似乎这不是一个很酷的API,或者我可能不够好来执行这种数组,(我的头很痛)
最佳答案
如果你想循环遍历数组中的对象,你可以这样做
for(var i=0; i<your_array.length; i++){
var object = your_array[i]
//your code here
}
如果你想循环访问对象中的属性,你可以这样做
for(var propName in object){
var prop = object[propName]
//Your code here
}
如果您只想循环使用数字格式名称的属性,则可以这样做
for(var propName in object){
if(!isNaN(propName)){
var prop = object[propName]
//Your code here
}
}
总而言之,
for(var i=0; i<your_array.length; i++){
var object = your_array[i];
console.log("From " + object.start_time + " to " + object.end_time);
for(var propName in object){
if(!isNaN(propName)){
var playerIndex = propName;
var player = object[propName]
console.log("Index = " + playerIndex + ", ID = " + player.player_id + ", Name = " + player.player_name);
}
}
}
输出
From 17:40:00 to 18:00:00
Index = 0, ID = 138, Name = Jay Patoliya
From 17:00:00 to 18:00:00
Index = 0, ID = 138, Name = Jay Patoliya
From 17:40:00 to 18:00:00
Index = 0, ID = 138, Name = Jay Patoliya
Index = 1, ID = 4, Name = Jay Patoliya
Index = 2, ID = 49, Name = John DiFulvio
关于javascript - 我如何循环访问这种 javascript 对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46555285/