#青训营笔记创作活动#
2月13日 打卡day27今日学习:
在 JavaScript 中,什么时候使用 Map 或胜过 Object
Map 比 Object 快,除非有小的整数、数组索引的键,而且它更节省内存。如果你需要一个频繁更新的 hash map,请使用 Map;如果你想一个固定的键值集合(即记录),请使用Object,并注意原型继承带来的陷阱。
与 Object 相比,Map 为各种常见任务提供了专门的API: Map.prototype.has 检查一个给定的项是否存在,与必须在对象上使用Object.prototype.hasOwnProperty/Object.hasOwn 相比,不那么尴尬了。 Map.prototype.get 返回与提供的键相关的值。有的可能会觉得这比对象上的点符号或括号符号更笨重。不过,它提供了一个干净的用户数据和内置方法之间的分离。 Map.prototype.size 返回 Map 中的项的个数,与获取对象大小的操作相比,这明显好太多了。此外,它的速度也更快。 Map.prototype.clear 可以删除 Map 中的所有项,它比 delete 操作符快得多。
2月13日 打卡day27今日学习:
在 JavaScript 中,什么时候使用 Map 或胜过 Object
Map 比 Object 快,除非有小的整数、数组索引的键,而且它更节省内存。如果你需要一个频繁更新的 hash map,请使用 Map;如果你想一个固定的键值集合(即记录),请使用Object,并注意原型继承带来的陷阱。
与 Object 相比,Map 为各种常见任务提供了专门的API: Map.prototype.has 检查一个给定的项是否存在,与必须在对象上使用Object.prototype.hasOwnProperty/Object.hasOwn 相比,不那么尴尬了。 Map.prototype.get 返回与提供的键相关的值。有的可能会觉得这比对象上的点符号或括号符号更笨重。不过,它提供了一个干净的用户数据和内置方法之间的分离。 Map.prototype.size 返回 Map 中的项的个数,与获取对象大小的操作相比,这明显好太多了。此外,它的速度也更快。 Map.prototype.clear 可以删除 Map 中的所有项,它比 delete 操作符快得多。
展开
评论
点赞