Map.has()用于檢查 key 是否存在Map而不是 using有什么好處Map.get()嗎?(代碼可讀性原因除外)我檢查了 ES2015 語言規(guī)范,除了返回值外,兩種方法似乎都一樣,所以我相信性能是一樣的,但也許還有一些我不知道的其他方面會影響這里的性能。Map.prototype.has ( key )采取以下步驟:令 M 為 this 值。如果 Type(M) 不是 Object,則拋出 TypeError 異常。如果 M 沒有 [[MapData]] 內(nèi)部槽,則拋出 TypeError 異常。讓條目成為列表,它是 M 的 [[MapData]] 內(nèi)部槽的值。對作為條目元素的每個記錄 {[[key]], [[value]]} p 重復(fù),如果 p.[[key]] 不為空并且 SameValueZero(p.[[key]], key) 是真,返回真。返回假。Map.prototype.get ( key )采取以下步驟:令 M 為 this 值。如果 Type(M) 不是 Object,則拋出 TypeError 異常。如果 M 沒有 [[MapData]] 內(nèi)部槽,則拋出 TypeError 異常。讓條目成為列表,它是 M 的 [[MapData]] 內(nèi)部槽的值。對作為條目元素的每個記錄 {[[key]], [[value]]} p 重復(fù),如果 p.[[key]] 不為空并且 SameValueZero(p.[[key]], key) 是真,返回 p.[[value]]。返回未定義。
Map.has 與 Map.get 之間的性能差異
哈士奇WWW
2021-07-14 17:11:01