我有一个均匀对象的数组:
var objects = [{
id: 1,
name: "one"
}, {
id: 2,
name: "two"
}];
我将使用每个对象的id
属性作为Map键,将它们转换为Map:
var map = new Map();
objects.forEach(obj => map.set(obj.id, obj));
然而,我希望进行转换时不需手动创建新的地图对象,也不需手动迭代数组并自行调用set
。
此外,我认为我不应该为此实现一个实用函数,因为这应该是本机功能。
注意:搜索“js将数组转换为地图”、“js将数组转换为地图”或“js从数组创建地图”的查询都包含使用
Object
或具有实用程序函数的过时答案。我正在寻找这里的本机方法。
即,我正在寻找JavaScript中将数组映射到C#字典的本机等效方法。
var map = list.ToDictionary(item => item.id);
这非常简单和方便,但有趣的是,在JavaScript中没有Map.from
(尽管有一个Array.from
)。