📜  来自两个数组的 javascript 字典 - Javascript (1)

📅  最后修改于: 2023-12-03 15:40:21.143000             🧑  作者: Mango

来自两个数组的 Javascript 字典

在编写 JavaScript 代码时,我们有时需要将两个数组组合成一个字典。这篇文章将介绍如何在 JavaScript 中实现这个功能。

方法一:使用对象

最简单的方法是使用对象。我们可以通过遍历两个数组来创建一个对象,该对象的键值对由这些数组的元素组成。下面是一个示例实现:

function combineArrays(arr1, arr2) {
  const dict = {};
  for (let i = 0; i < arr1.length; i++) {
    dict[arr1[i]] = arr2[i];
  }
  return dict;
}

const arr1 = ['key1', 'key2', 'key3'];
const arr2 = ['value1', 'value2', 'value3'];
const dict = combineArrays(arr1, arr2);
console.log(dict); // {key1: "value1", key2: "value2", key3: "value3"}
方法二:使用 Map

另一种方法是使用 Map。Map 是一种类似于对象的数据结构,其中的键可以是任何类型的值。我们可以使用 zip 函数将两个数组压缩到一个 Map 中:

function zip(arr1, arr2) {
  return new Map(arr1.map((key, i) => [key, arr2[i]]));
}

const arr1 = ['key1', 'key2', 'key3'];
const arr2 = ['value1', 'value2', 'value3'];
const dict = zip(arr1, arr2);
console.log(dict); // Map(3) {"key1" => "value1", "key2" => "value2", "key3" => "value3"}
总结

无论选择哪种方法,以上两种方法都可以将两个数组转换为 JavaScript 字典。使用对象的方法相对更加简单,但是使用 Map 的方法更加灵活,因为 Map 可以接受任何类型的键。