javascript - 如何在 Javascript 中实例化所有键映射到相同值的字典?
问题描述
我有一个像这样的数组:
let arr = ['ABC', 'DEF']
我想将该数组转换为
let obj = {"ABC": 0, "DEF": 0}
进行这种转换的合适的 ES6 语法是什么?
let arr = ['ABC', 'DEF']
arr.reduce(x => ({[x] : 0 }))
这很接近,但我最终得到{"ABC": 0}
基本上,我想获取一个任意长度的数组,并将该数组中的所有值分配给“默认”值 0。
谢谢!
解决方案
只需使用一个简单的循环:
const arr = ['ABC', 'DEF'];
const obj = {};
for (const x of arr) obj[x] = 0;
如果你想变得花哨,我建议Object.fromEntries
:
Object.fromEntries(arr.map(x => [x, 0]))
推荐阅读
- swift - Firebase中的多张图片上传
- tsql - 从天数中获取天数
- angular - 如何在angular6中有多个正则表达式模式验证器
- python - 创建字典时如何选择出现次数最多的元素?
- mysql - Doctrine - querybuider setParameters 与数组(嵌套/多个值)
- c++ - 从欧拉角到四元数
- makefile - 如何在makefile中有正确的.mod顺序
- jquery - 如何在 CSS 中创建 iOS 样式的 Actionsheet 弹出窗口?
- r - 安装TTR时如何解决版本问题
- email - javax.mail:“连接被拒绝”到 smtp.gmail.com