在 JavaScript 中将对象转换为地图

在 JavaScript 中将对象转换为地图

Convert an Object to a Map in JavaScript

要将对象转换为Map,请调用该Object.entries()方法以获取键值对数组并将结果传递给Map()构造函数,例如
const map = new Map(Object.entries(obj))新的Map将包含对象的所有键值对。

索引.js
const obj = { id: 1, name: 'Fred', }; // ✅ Convert Object to Map const map1 = new Map(Object.entries(obj)); console.log(map1); // 👉️ {'id' => 1, 'name' => 'Fred'} // ✅ Convert Map to Object const objAgain = Object.fromEntries(map1); console.log(objAgain); // 👉️ {id: 1, name: 'Fred'}

我们使用
Object.entries
方法来获取键值对数组。

索引.js
// 👇️ [['id', 1], ['name', 'Fred']] console.log(Object.entries({id: 1, name: 'Fred'}));

每个嵌套数组中的第一个元素是键,第二个是值。

然后我们将结果传递给
Map()
构造函数。

索引.js
const obj = { id: 1, name: 'Fred', }; const map1 = new Map(Object.entries(obj)); console.log(map1); // 👉️ {'id' => 1, 'name' => 'Fred'}
构造Map函数采用可迭代对象(例如键值对数组)并创建一个Map.

如果需要将 back 转换Map回对象,请使用
Object.fromEntries
方法。

索引.js
// 👇️ {id: 1, name: 'Fred'} console.log( Object.fromEntries([ ['id', 1], ['name', 'Fred'], ]), );

Object.fromEntries()方法将可迭代对象(例如 aMap或数组)作为参数并将其转换为对象。可迭代对象必须包含键值对。