javascript - javascript 无法使用嵌套值映射对象数组
问题描述
尝试使用嵌套在子对象结构中的值映射对象数组,例如:
const objs = [{
"B": {
"value": 1,
},
"D": {
"value": "45"
},
"E": {
"value": "234"
},
"A": {
"value": "543"
},
"C": {
"value": "250"
}
},...]
结构如下:
[
{ name: 'B', value: 1 },
{ name: 'D', value: '45' },
{ name: 'E', value: '234' },
{ name: 'A', value: '543' },
{ name: 'C', value: '250' }
]
映射的结果是undefined
const mapped = objs.map((key, index) => {
Object.keys(key).map(el => ({
name: el
}))
})
示例:Stackblitz
解决方案
您应该对 objs[0] 进行操作,而不是 objs,因为它是一个对象的数组,而不是对象的数组。
let array = []
for(let object in objs[0]){
array.push({
"name": object,
"value": objs[0][object].value
})
}
推荐阅读
- deep-learning - 深度纯价值强化学习:训练 V(s) 而不是 Q(s,a)?
- django - 带有设置子文件夹的 django wsgi 设置
- c# - Xamarin ios 自定义 WKWebview 渲染器默认解析 youtube 视频全屏显示
- python - 使用 Google 进行阿拉伯情绪分析
- javascript - 快速会话空会话
- html - 如何删除摘要元素侧面的箭头?
- cuda - CUDA 内核失败:没有可在设备上执行的内核映像,在 Google Compute VM 中运行 PyTorch 模型时出错
- websocket - 是否可以将 websocket 消息发送到 kafka 主题?
- amazon-web-services - 无法访问使用现有实例的映像创建的 AWS 实例
- java - JSch 没有检测到 $HOME/.ssh/id_rsa 公钥