在 JavaScript 中从两个数组创建一个对象
JavaScript 中从两个数组创建一个对象:
-
使用
Array.forEach()
方法迭代第一个数组。 - 使用索引访问第二个数组中的元素。
- 在每次迭代中,将键值对分配给一个对象。
const arr1 = ['name', 'age', 'country'];
const arr2 = ['Tom', 30, 'Chile'];
const obj = {};
arr1.forEach((element, index) => {
obj[element] = arr2[index];
});
// 👉️ {name: 'Tom', age: 30, country: 'Chile'}
console.log(obj);
我们传递给 Array.forEach()
方法的函数会针对数组中的每个元素进行调用。
该函数传递了以下 3 个参数:
- 当前元素
- 迭代索引
- 数组本身
我们利用索引访问第二个数组中的值,并将键值对分配给一个对象。
方法完成迭代后,对象包含来自两个数组的键值对。
另一种但更实用的方法是使用 Array.reduce()
方法。
从两个数组创建一个对象:
-
使用
reduce()
方法迭代第一个数组。 - 提供一个空对象作为累加器的初始值。
- 使用索引,将键值对分配给累积的对象。
- 返回结果。
const arr1 = ['name', 'age', 'country'];
const arr2 = ['Tom', 30, 'Chile'];
const obj = arr1.reduce((accumulator, element, index) => {
return {...accumulator, [element]: arr2[index]};
}, {});
// 👇️️ {name: 'Tom', age: 30, country: 'Chile'}
console.log(obj);
我们传递给
reduce()
方法的函数会为数组中的每个元素调用。
我们提供了一个空对象作为累加器变量的初始值。
在每次迭代中,我们使用扩展语法 ...
将累加器的键值对解包到一个新对象中,然后添加当前键值对并返回结果。
一旦 reduce 方法迭代了整个数组,累加器对象将包含来自两个数组的键值对。
我们选择哪种方法是个人喜好的问题。 如果大家不熟悉
reduce
方法,使用forEach
方法会更直观。
相关文章
使用 CSS 和 JavaScript 制作文本闪烁
发布时间:2023/04/28 浏览次数:146 分类:CSS
-
本文提供了使用 CSS、JavaScript 和 jQuery 使文本闪烁的详细说明。
在 PHP 变量中存储 Div Id 并将其传递给 JavaScript
发布时间:2023/03/29 浏览次数:69 分类:PHP
-
本文教导将 div id 存储在 PHP 变量中并将其传递给 JavaScript 代码。
在 JavaScript 中从字符串中获取第一个字符
发布时间:2023/03/24 浏览次数:93 分类:JavaScript
-
在本文中,我们将看到如何使用 JavaScript 中的内置方法获取字符串的第一个字符。
在 JavaScript 中获取字符串的最后一个字符
发布时间:2023/03/24 浏览次数:141 分类:JavaScript
-
本教程展示了在 javascript 中获取字符串最后一个字符的方法