javascript - 将键数组转换为键值对对象

标签 javascript node.js javascript-objects

我知道如何转换它:

const keys = [1, 2, 3];

对此:

[{key: 1, val: "q"}, {key: 2, val: "w"}, {key: 3, val: "e"}]

使用单个映射语句:

keys.map((x, i) => ({key: x, val: "qwe".charAt(i)}));

但我实际上想得到这个:

{1: "q", 2: "w", 3: "e"}

是否有一种巧妙的方法可以在类似于上面的单个语句中执行此操作?

最佳答案

您可以使用reduce :

keys.reduce((accumulator, value, index) => { accumulator[index] = "qwe".charAt(index); return accumulator; }, {})

关于javascript - 将键数组转换为键值对对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59038702/

相关文章:

javascript - 将 2 个对象的值相加

javascript - 下载通过 nodejs 响应 POST 请求发送的文件?

javascript - 将分层路径数组转换为 JSON

javascript - 简单的 JavaScript 数学没有意义

javascript - 我应该用 JavaScript 更新 aria-* 属性吗?

javascript - 在加载所有任务之前不会设置 Grunt 环境变量

node.js - Sails 生成-oauth

javascript - JS 将包含对象值的数组分配给对象键

javascript - 从 JavaScript 中的参数中删除参数

javascript - 第一次运行Jhipster应用报错