我想将Object
转换为数组,这是我的对象。
{5.0: 10, 28.0: 14, 3.0: 6}
我想要下面的数组
[{"type": 5.0,"value":10},{"type": 28.0,"value":14}, {"type": 3.0,"value":6}]
或
[{"5.0": 10},{"28.0": 14}, {"3.0": 6}]
答案 0 :(得分:10)
通过Object.keys
获取密钥,然后使用map
功能获取所需的输出。
const obj = {5.0: 10, 28.0: 14, 3.0: 6};
const mapped = Object.keys(obj).map(key => ({type: key, value: obj[key]}));
console.log(mapped);

可以通过Object.entries
和数组解构提供另一种解决方案。
const obj = {5.0: 10, 28.0: 14, 3.0: 6};
const mapped = Object.entries(obj).map(([type, value]) => ({type, value}));
console.log(mapped);

答案 1 :(得分:5)
使用Object.keys和array.map:
var obj = {5.0: 10, 28.0: 14, 3.0: 6}
var arr = Object.keys(obj).map(key => ({type: key, value: obj[key]}));
console.log(arr);
如果您的浏览器支持Object.entries,您可以使用它:
var obj = {5.0: 10, 28.0: 14, 3.0: 6}
var arr = Object.entries(obj).map(([type, value]) => ({type, value}));
console.log(arr);