等值比较就是指比较两个表达式(或操作数)的值是否相等,比较方法有:1、使用“==”运算符,语法“a==b”;2、使用“===”运算符,语法“a===b”;3、使用“Object.is()”方法,语法“Object.is(a , b)”。
本教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。
javascript中的等值比较
在javascript中,等值比较就是指比较两个表达式(或操作数)的值是否相等。
我们都知道 JavaScript 是松散类型,并且在某些情况下,当使用 ==
来做等值比较时,会给你意想不到的结果。这是因为使用 ==
做等值比较时,JavaScript 会对2个比较的值进行隐式强制转换。
0 == ' ' //true null == undefined //true [1] == true //true
所以 JavaScript 还为我们提供了三个等号运算符 ===
,它更严格,不强制转换比较值,但实用 ===
比较有些时候也不是最好的解决方案:
NaN === NaN //false
有个好消息是,在 ES6 中有一个新的更好更准确的办法 Object.is()
,它与 ===
具有相同的功能,而且在一些特殊情况下表现良好:
Object.is(0 , ' '); //false Object.is(null, undefined); //false Object.is([1], true); //false Object.is(NaN, NaN); //true
下面这张图详细说明了 ==
,===
和 Object.is()
等值比价的异同:
【相关推荐:javascript学习教程】
以上是javascript中的等值比较是什么的详细内容。更多信息请关注PHP中文网其他相关文章!