有没有一种方法可以在一行中从数组值设置对象键

2024-04-03

假设我有一个像这样的数组:

const myArray = ['HP', 'QP', 'PS'];

我想要一个对象,其键是myArray的值如

{ HP: 0, QP: 0, PS: 0 }

有没有办法在一行中执行以下操作:

const myObj = {};
myArray.forEach(item => myObj[item] = 0);

尝试使用reduce:

const myArray = ['HP', 'QP', 'PS'];
const myObj = myArray.reduce((a, key) => Object.assign(a, { [key]: 0 }), {});
console.log(myObj);

在较新的环境中,您还可以使用Object.fromEntries:

const myArray = ['HP', 'QP', 'PS'];
const myObj = Object.fromEntries(myArray.map(key => [key, 0]));
console.log(myObj);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

有没有一种方法可以在一行中从数组值设置对象键 的相关文章

随机推荐