JavaScript如何将两个数组合并为键值一一对应的对象
JavaScript实现两个数组对应元素组合为键值对对象的方法
方案1:ES2019+ 简洁写法(推荐)
用Object.fromEntries()结合Array.prototype.map()实现,代码量最少:
let arr1=["john","Bruce","Clent"]; let arr2=[55,33,22]; const result = Object.fromEntries(arr1.map((key, index) => [key, arr2[index]])); console.log(result); // 输出 {john: 55, Bruce: 33, Clent: 22}
实现逻辑:map方法遍历arr1的同时拿到元素对应下标,返回[键, 值]格式的二维数组,Object.fromEntries会直接将该二维数组转换为目标对象。
方案2:通用循环写法(兼容所有JS环境)
如果需要兼容不支持ES2019的旧运行环境,可以用普通for循环实现:
let arr1=["john","Bruce","Clent"]; let arr2=[55,33,22]; const result = {}; for(let i = 0; i < arr1.length; i++) { // 仅当arr2对应下标存在值时赋值,可根据实际需求调整判断逻辑 if(i < arr2.length) { result[arr1[i]] = arr2[i]; } } console.log(result); // 输出 {john: 55, Bruce: 33, Clent: 22}
内容的提问来源于stack exchange,提问作者NoushadM
相关产品推荐
相关产品推荐

