javascript - 如何使用 2 个数组创建具有键和值的新数组?
问题描述
我有 2 个数组,一个用于key
,另一个用于value
.
想用这些数组创建新数组。
键:[01, 02, 03]
值:["hi", "hello", "welcome"]
输出我需要:
[
{"key": "1","value":"hi"},
{"key": "2","value":"hello"},
{"key": "3","value":"welcome"}
]
如何通过这种方式获得结果。?
我的代码:
output = key.map(function(obj, index){
var myObj = {};
myObj[value[index]] = obj;
return myObj;
})
结果:
[
{"1","hi"},
{"2","hello"},
{"3","welcome"}
]
解决方案
const keys = [01, 02, 03];
const values = ['hi', 'hello', 'welcome'];
const res = keys.map((key, ind) => ({ 'key': ''+key, 'value': values[ind]}));
console.log(res);
还有一个关于 Object 的以下方法的建议fromEntries
,它可以完全按照您的意愿进行操作,但主要浏览器尚不支持:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/fromEntries
推荐阅读
- c# - 如果 UI 和 API 都部署在不同端口的同一 VM 中,如何使用私有 IP 或 localhost 或 127.0.0.1 作为 API 基本 URL 从 UI 调用 API?
- android - 在 Firebase Auth UI 之后将帐户添加到帐户管理器
- java - 导出 jar 后出现 NoClassDefFoundError
- php - Laravel CRUD 删除路由参数
- javascript - 在环回中使用原型创建实例方法的问题
- python - 在python中打印最大和最小的数字
- tensorflow - 使用经过训练的权重来训练不同的数据集
- python - 收到请求时如何修改flask的默认输出
- node.js - 无法使用 Node.js 从 SQLite 数据库中检索新值
- python-3.x - Python 中的单词大写,但有例外(不是每个单词)