gpt4 book ai didi

javascript - 将数组转换为具有默认值的对象的更简洁的方法? (Lodash 可用)

转载 作者:行者123 更新时间:2023-12-05 05:17:24 28 4
gpt4 key购买 nike

我有一个数组,比方说 ["a","b","c"],我想把它变成一个对象,它以数组值作为键和一个默认值我可以设置。因此,如果默认值为 true,我希望我的输出为 {a:true, b:true, c:true}

是否有下面代码的更简洁版本来实现此目的?

var myObject = {};
["a","b","c"].forEach(x => myObject[x] = true);

我觉得有一种简洁的 Lodash 或 ES6 方法可以做到这一点,但我想不出。

最佳答案

标准 Object.assignArray#map

var array = ["a", "b", "c"],
object = Object.assign(...array.map(k => ({ [k]: true })));

console.log(object);

或者使用 lodash 和 _.set

var array = ["a", "b", "c"],
object = array.reduce((o, k) => _.set(o, k, true), {});

console.log(object);
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.15.0/lodash.min.js"></script>

关于javascript - 将数组转换为具有默认值的对象的更简洁的方法? (Lodash 可用),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49305307/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com