Javascript 将对象的对象转换为数组
我在一个有角度的项目上工作,我对一个物体有点问题 我有一个对象,其中包含对象:Javascript 将对象的对象转换为数组,javascript,html,arrays,angular,typescript,Javascript,Html,Arrays,Angular,Typescript,我在一个有角度的项目上工作,我对一个物体有点问题 我有一个对象,其中包含对象: P3E051V:{ lot: "P3E051V" quantite: 5400 }, P3E052V:{ lot: "P3E052V" quantite: 5400 }, P3E054V:{ lot: "P3E054V" quantite: 10800 } 我想做的是显示如下表: 但我不能用*ngFor循环对象。 我尝试使用Object.entries(myObje
P3E051V:{
lot: "P3E051V"
quantite: 5400
},
P3E052V:{
lot: "P3E052V"
quantite: 5400
},
P3E054V:{
lot: "P3E054V"
quantite: 10800
}
我想做的是显示如下表:
但我不能用*ngFor循环对象。
我尝试使用Object.entries(myObject),但它不起作用
有人有办法解决这个问题吗
谢谢您可以使用
Object.keys()
,它将生成一个包含对象中所有键的数组。使用循环时,可以使用这些关键点从主对象获取对象
var obj={P3E051V:{
地段:“P3E051V”,
数量:5400
},
P3E052V:{
标段:“P3E052V”,
数量:5400
},
P3E054V:{
地段:“P3E054V”,
数量:10800
}
}
Object.keys(obj.forEach(e=>console.log(obj[e]))
const objs={P3E051V:{
地段:“P3E051V”,
数量:5400
},
P3E052V:{
标段:“P3E052V”,
数量:5400
},
P3E054V:{
地段:“P3E054V”,
数量:10800
}}
log('key+object',object.entries(objs));
log('只是内部对象',object.entries(objs.map)(o=>o[1])代码>只需将此对象放入数组即可
像array.push(object)我尝试使用object.keys(obj).map(key=>obj[key]),效果很好
感谢您的帮助Object.keys(obj).map(key=>obj[key])…Object.keys(obj)
提供了一个键数组,['P3E051V'、'P3E052V'、'P3E054V']
。或者你可以使用Object.entries
你说你已经尝试了Object.entries(myObject)
,但我暗自怀疑它的工作原理与预期完全一样,而你只是不明白从输出中会得到什么。您应该在代码中设置一个断点,以确定Object.entries
的输出是什么,因为如果您知道如何使用它,它确实可能是您正在寻找的解决方案
const inputObject = {
P3E051V:{
lot: "P3E051V",
quantite: 5400
},
P3E052V:{
lot: "P3E052V",
quantite: 5400
},
P3E054V:{
lot: "P3E054V",
quantite: 10800
}
}
const outputObjectArray = Object.entries(inputObject).map(entry=>{ return entry[1]});
console.log(outputObjectArray);