很多小伙伴再判斷兩個值是否相等都喜歡用===,ES6中新增了一個Object.is(val1,val2)方法是否還記得?
對於Object.is來說,其運行結果在大部分情況中與===運算符相同,唯一的區別在於+0和-0被識別為不相等並且NaN與NaN等價。
舉個例子來說吧:
+0 === -0 //true NaN === NaN // false Object.is(+0, -0) // false Object.is(NaN, NaN) // true
以后再寫代碼的時候用上Object.is是不是顯得很高大上。