根据mozilla:
Map对象可以按插入顺序对其元素进行迭代-for..of循环将为每次迭代返回[key,value]数组。
和
对象与Maps相似,两者都允许您将键设置为值,检索这些值,删除键以及检测是否在键处存储了某些内容。因此,对象在历史上一直被用作地图;但是,对象和地图之间存在重要差异,因此可以更好地使用地图。
对象具有原型,因此地图中包含默认键。但是,可以使用map =
Object.create(null)绕过它。对象的键是字符串,其中键可以是Map的任何值。您可以轻松获取地图的大小,而不必手动跟踪对象的大小。
当键直到运行时才是未知的,并且所有键都是相同的类型并且所有值都是相同的类型时,请在对象上使用映射。
当存在对单个元素进行操作的逻辑时,请使用对象。
有序可迭代性是开发人员长期以来一直希望使用的功能,部分原因是它确保了所有浏览器的相同性能。所以对我来说,那是很大的。
该
myMap.has(key)方法将特别方便,而且
myMap.size属性也很方便。



