将数组转换为键值对象

时间:2019-05-27 15:37:51

标签: javascript arrays object ecmascript-6

我有这种数组

['item one', 'item two', 'item three']

广告希望将其转换为这样的对象;

{
"name": 'item one',
"name": 'item two',
"name": 'item three'
}

我尝试遍历并创建一个默认密钥,我觉得这样做不正确

let arr = ['item one', 'item two', 'item three']
let obj = {};
arr.forEach((cv) => { 
  obj["name"] = cv; 
}
console.log(obj)

但是这只会返回具有最后一个值的obj;

{
"name": 'item three'
}

1 个答案:

答案 0 :(得分:0)

为什么键相同?对于一个对象,键应该是唯一的。

相反,您可以尝试一下,

const arr = ['one', 'two', 'three' ]

let newArr = arr.map(item => {
    return { name: item } })

结果

newArr = [
 { name: 'one' },
 { name: 'two' },
 { name: 'three' },
]