如何在 JavaScript 中将两个数组存储为一个键值对中的一个对象?


假如,我们有两个长度相等的字面数组,如下所示-

const arr1 = ['firstName', 'lastName', 'age', 'address', 'isEmployed'];
const arr2 = ['Rahul', 'Sharma', 23, 'Tilak Nagar', false];

我们需要编写一个 JavaScript 函数,该函数接收这两个数组。

该函数应该构造一个对象,将第二个数组的元素映射到第一个数组的相应元素。

我们将使用 Array.prototype.reduce() 方法来遍历数组,构建对象。

示例

代码如下所示-

const arr1 = ['firstName', 'lastName', 'age', 'address', 'isEmployed'];
const arr2 = ['Rahul', 'Sharma', 23, 'Tilak Nagar', false];
const mapArrays = (arr1 = [], arr2 = []) => {
   const res = arr1.reduce((acc,elem,index) =>{
      acc[elem]=arr2[index];
      return acc;
   },{});
   return res;
};
console.log(mapArrays(arr1, arr2));

输出

控制台中的输出如下-

{
   firstName: 'Rahul',
   lastName: 'Sharma',
   age: 23,
   address: 'Tilak Nagar',
   isEmployed: false
}

更新于: 23-11-2020

692 次浏览

开启你的职业生涯

完成课程获得认证

开始
广告