如何将包含对象的对象转换为对象数组

106

这是我的对象

var data = {
    a:{"0": "1"},
    b:{"1": "2"},
    c:{"2": "3"},
    d:{"3": "4"}
};

这是我期望的输出

data = [ 
    {"0": "1"},
    {"1": "2"},
    {"2": "3"},
    {"3": "4"}
]

然后看看我的有关目标结构的评论。这是一种糟糕的输出格式,而且在JavaScript中使用起来很麻烦。为什么不把所有的键/值对都放在一个单独的对象中呢? - jfriend00
1
我在我的应用程序中使用了一个第三方库,它需要按照我想要的格式输入。没办法。 - Nick Div
2
哇,这些评论让我头疼。一个对象数组在JavaScript中怎么会“难用”呢?虽然这些对象通常都有相同的结构,但我们经常使用对象数组,而且非常容易使用。 - iGanja
12个回答

0
我们可以使用对象默认方法(Object.assign(),Object.values())以以下方式将对象转换为数组

const ObjValue = {
a:{"0": "1"},
b:{"1": "2"},
c:{"2": "3"},
d:{"3": "4"}
}
const ObjtoArray = (obj) => Object.assign([], Object.values(obj))

console.log(ObjtoArray(ObjValue))


0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接