使用 JavaScript 从数组创建地图

使用 JavaScript 从数组创建映射

Create a Map from an Array using JavaScript

要从数组创建 a Map,请将包含键值对的二维数组传递给Map()构造函数。Map构造函数创建一个新的
并将
Map每个键值对添加到它。

索引.js
// ✅ from Array of ARRAYS const arr1 = [ ['name', 'Tom'], ['country', 'Chile'], ]; const map1 = new Map(arr1); console.log(map1); // 👉️ {'name' => 'Tom', 'country' => 'Chile'} // ✅ from Array of OBJECTS const arr2 = [ {key: 'name', value: 'Tom'}, {key: 'country', value: 'Chile'}, ]; const map2 = new Map( arr2.map(object => [object.key, object.value]) ); console.log(map2); // 👉️ {'name' => 'Tom', 'country' => 'Chile'}

在我们的第一个示例中,我们将包含键值对的二维数组直接传递给
Map()
构造函数。
所有键值对都添加到新的
Map.

在第二个代码片段中,我们有一个对象数组。我们知道构造函数需要一个数组数组,所以我们必须以某种方式进行转换。 Map()

我们使用Array.map
方法
遍历数组

我们传递给map方法的函数被数组中的每个元素(对象)调用。

Array.map()方法返回一个新数组,其中包含回调函数返回的值。

在每次迭代中,我们返回一个包含对象的键和值的数组。

索引.js
const arr2 = [ {key: 'name', value: 'Tom'}, {key: 'country', value: 'Chile'}, ]; // 👇️ [ ['name', 'Tom'], ['country', 'Chile'] ] const twoDimensionalArr = arr2.map( object => [object.key, object.value] ); console.log(twoDimensionalArr)

现在我们有一个可以传递给Map()构造函数的数组数组。

进一步阅读

发表评论