在 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
或数组)作为参数并将其转换为对象。可迭代对象必须包含键值对。