我有以下对象
"data":{
"name 1":"a",
"name 2":"b",
"name 3":"b",
},
如何转换为同时保留名称和数据“a”、“b”的对象数组,以便我可以为传入名称和数据的每个组件映射和渲染组件?
原文由 Almog 发布,翻译遵循 CC BY-SA 4.0 许可协议
我有以下对象
"data":{
"name 1":"a",
"name 2":"b",
"name 3":"b",
},
如何转换为同时保留名称和数据“a”、“b”的对象数组,以便我可以为传入名称和数据的每个组件映射和渲染组件?
原文由 Almog 发布,翻译遵循 CC BY-SA 4.0 许可协议
Tall Paul 提供的解决方案将完美运行,但您也可以使用 Object.entries() 。它指出
Object.entries() 方法返回给定对象自己的可枚举属性 [key, value] 对的数组,其顺序与 for…in 循环提供的顺序相同(区别在于 for-in 循环枚举原型链中的属性也是如此)。
所以你可以尝试这样的事情
let result = Object.entries(data);
result.map((item, index)=>{
console.log('key is:- ', item[0], ' and value is:- ', item[1]);
});
原文由 Manjeet Singh 发布,翻译遵循 CC BY-SA 4.0 许可协议
13 回答13k 阅读
7 回答2.2k 阅读
3 回答1.3k 阅读✓ 已解决
6 回答1.3k 阅读✓ 已解决
2 回答1.4k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
6 回答1.1k 阅读
如果您使用 reduce 函数,您可以执行以下操作来实现您的目标
Reduce
是一个很酷的函数,它将数据迭代并组合成一个项目(可以是 1 个对象、数组、整数等)。Object.keys()
是一种从当前对象获取每个键并能够迭代每个键的方法。