为了账号安全,请及时绑定邮箱和手机立即绑定

Map.has 与 Map.get 之间的性能差异

Map.has 与 Map.get 之间的性能差异

哈士奇WWW 2021-07-14 17:11:01
Map.has()用于检查 key 是否存在Map而不是 using有什么好处Map.get()吗?(代码可读性原因除外)我检查了 ES2015 语言规范,除了返回值外,两种方法似乎都一样,所以我相信性能是一样的,但也许还有一些我不知道的其他方面会影响这里的性能。Map.prototype.has ( key )采取以下步骤:令 M 为 this 值。如果 Type(M) 不是 Object,则抛出 TypeError 异常。如果 M 没有 [[MapData]] 内部槽,则抛出 TypeError 异常。让条目成为列表,它是 M 的 [[MapData]] 内部槽的值。对作为条目元素的每个记录 {[[key]], [[value]]} p 重复,如果 p.[[key]] 不为空并且 SameValueZero(p.[[key]], key) 是真,返回真。返回假。Map.prototype.get ( key )采取以下步骤:令 M 为 this 值。如果 Type(M) 不是 Object,则抛出 TypeError 异常。如果 M 没有 [[MapData]] 内部槽,则抛出 TypeError 异常。让条目成为列表,它是 M 的 [[MapData]] 内部槽的值。对作为条目元素的每个记录 {[[key]], [[value]]} p 重复,如果 p.[[key]] 不为空并且 SameValueZero(p.[[key]], key) 是真,返回 p.[[value]]。返回未定义。
查看完整描述

目前暂无任何回答

  • 0 回答
  • 0 关注
  • 427 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信