Javascript数组对象到逗号分隔的单行数组



我的api有一个响应,它返回一个看起来像这样的对象。

{
"global.edit": "Edit"
},
{
"global.add": "Add"
},
{
"lang.english": "English"
},
{
"lang.french": "French"
},
{
"menu.localGroups": "Label's groups"
},
{
"menu.locals": "Labels"
}

我试图实现的是转换为一个分隔的逗号数组。

const MY_NEW_LOCALS_HERE = {
"global.edit": "Edit",
"global.add": "Add",
"lang.english": "English",
"lang.french": "French",
"menu.localGroups": "Label's groups",
"menu.locals": "Labels"
}

所以我可以将加载的本地添加到React-Intl中。

this.setState({
localMessage: {
...this.state.localMessage,
MY_NEW_LOCALS_HERE,
}
})

我花了几个小时试图弄清楚,但我就是弄不明白。

如何实现这一点有什么帮助吗?

如果我使用OBJECT.join(','),我会得到一个[对象对象],[对象对象对象]数组。

您可以使用带有reduce方法的解构主义将所有键放入一个对象中。

var temp = [{
"global.edit": "Edit"
},
{
"global.add": "Add"
},
{
"lang.english": "English"
},
{
"lang.french": "French"
},
{
"menu.localGroups": "Label's groups"
},
{
"menu.locals": "Labels"
}
];
var result = temp.reduce((r,v)=>({...r, ...v}),{});
console.log(result);

最新更新