我正在尝试遍历我的一个对象并获取该对象内的对象。
在此示例中,我尝试遍历items
中的orderCart
以获取qty
和price
{ _id: 591327ea6325162512438858,
orderCart:
{ totalPrice: 66.95,
totalQty: 5,
items:
{ '5900e2e1e2e75276ca68e10c': { item: [Object], qty: 2, price: 25.98 },
'5900d8fde2e75276ca68e107': { item: [Object], qty: 2, price: 25.98 },
'58fff1d322f00e71fdbfe422': { item: [Object], qty: 2, price: 25.98 }
}
},
orderEmail: 'email@gmail.com',
orderFullName: 'John Doe'
}
是否可以使用for循环/ forEach执行此操作,还是有其他方法可以执行此操作?
答案 0 :(得分:0)
您可以使用for...in
,也可以迭代Object.keys()
var myObj = {
_id: "591327ea6325162512438858",
orderCart: {
totalPrice: 66.95,
totalQty: 5,
items: {
'5900e2e1e2e75276ca68e10c': {
item: [Object],
qty: 2,
price: 25.98
},
'5900d8fde2e75276ca68e107': {
item: [Object],
qty: 2,
price: 25.98
},
'58fff1d322f00e71fdbfe422': {
item: [Object],
qty: 2,
price: 25.98
}
}
},
orderEmail: 'email@gmail.com',
orderFullName: 'John Doe'
};
console.log("---- for...in ----");
for (var key in myObj.orderCart.items) {
if (myObj.orderCart.items.hasOwnProperty(key)) {
var obj = myObj.orderCart.items[key];
console.log(obj.qty, obj.price);
}
}
console.log("---- Object.keys() ----");
Object.keys(myObj.orderCart.items).forEach(function(key) {
var obj = myObj.orderCart.items[key];
console.log(obj.qty, obj.price);
});

答案 1 :(得分:-1)
您可以使用Object.keys(items)获取对象的键数组。然后你可以遍历这个键数组,并使用它们来查看每个键/值对,并查看数量和价格。