如何在一行中设置对象prop和返回对象?



我有这样的代码:

const arr = [{name: 'fred', age: 20}, {name: 'john', age: 50}]
const result = arr.reduce((acc, item) => {
acc[item.name] = item.age
return acc
}, {})
console.log(result)

如何将下面的两行变成一行?

acc[item.name] = item.age
return acc

使用扩展语法(...)将item与您的新键/值结合起来,然后使用({})直接返回对象:

您也可以使用析构赋值来获得nameage作为单独的变量,而不是item,参见注释行中的示例。

const arr = [{name: 'fred', age: 20}, {name: 'john', age: 50}]
const result = arr.reduce((acc, item) => ({ ...acc, [item.name]: item.age }), {})
// Or with a destructuring assignment
// arr.reduce((acc, { name, age }) => ({ ...acc, [name]: age }), {})
console.log(result)

相关内容

  • 没有找到相关文章

最新更新