首页 > 解决方案 > 如何从数组中取出每个元素并使每个元素成为对象中的键?

问题描述

我有一个嵌套的字符串数组,在一个对象内,在一个数组内。我正在尝试拉出嵌套字符串并将每个元素作为一个键放在一个对象中,并且每个键的所有值都将设置为 0 而无需硬编码任何东西

const groups = [{name: group1, values: ['value1']},{name: group2, values: ['value2', 'value'}]

我正在尝试获取'value1','value2''value3', 并将它们作为键放入对象中-因此,它应该如下所示:

const obj = {'value1': 0,'value2': 0,'value3': 0,}

我有这个,它给了我一个值数组,但我不确定如何将它们从该数组中取出并将它们作为键放入对象中。

const allGroups = groups.flatMap(({ values }) => values,);

标签: javascriptarraysjavascript-objects

解决方案


使用forEach循环并且您的对象格式错误

const groups = [{name: 'group1', values: ['value1']},{name:' group2', values: ['value2', 'value3']}]
var obj={};
groups.forEach(e=>{
e.values.forEach(x=>obj[x]=0)
})
console.log(obj)


推荐阅读