JavaScript 中的相等性判斷
==
===
。這個(gè)操作符是嚴(yán)格的全等符,即它不僅需要比較的兩個(gè)值相等,而且還要求它們的類型也完全一致。然而,使用 ===
幸運(yùn)的是,ES6 中引入了新的 Object.is()
方法,它在很大程度上繼承了 ===
的性質(zhì),并在其基礎(chǔ)上做了進(jìn)一步的優(yōu)化和提升。與 ===
相比,Object.is()
在處理一些特殊情況時(shí)更加精確,例如:
Object.is()
比 ===
更加“嚴(yán)格”,他們主張我們應(yīng)關(guān)注該方法如何處理 NaN, -0 和 +0 等特殊情況。然而總的來(lái)說(shuō),我認(rèn)為 Object.is()
在實(shí)際開(kāi)發(fā)中是一個(gè)很好的選擇。

在最新的ECMAScript2024中,有個(gè)比較函數(shù)SameValueZero
標(biāo)簽: