我想遍歷這個對象,並將'loc'值添加到數組,如果他們的邊= 2。我做錯了什麼?爲什麼不是這個對象循環工作?
2025是房間的對象,整個房間都是房間。
//Object
{
"2025": {
"tom": {
"side": 1,
"loc": 111
},
"billy": {
"side": 2,
"loc": 222
},
"joe": {
"side": 2,
"loc": 333
},
"bob": {
"side": 1,
"loc": 444
}
}
}
//Code
var side2 = [];
for (var key in rooms[room]) {
if (rooms[room].hasOwnProperty(key)) {
var obj = rooms[room][key];
for (var prop in obj) {
if (obj.hasOwnProperty(prop)) {
if(prop == 'loc') {
if(obj[prop] == 2) {
side2.push(key);
}
}
}
}
}
}
console.log(side2);
因爲'loc'屬性沒有vaue'2'嗎?在調試器中逐步完成此操作應該可以幫助您找出問題所在。但是,爲什麼你要循環查找'loc'的鍵呢?你可以做'obj.loc'。 – 2015-11-14 03:02:28
對於'loc','side'沒有值2。你想做一些事情,比如if(prop =='side')if(obj [prop] == 2){side2.push(key); }' –