本篇内容介绍了“javascript中的等值比较怎么理解”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
等值比较就是指比较两个表达式(或操作数)的值是否相等,比较方法有: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中的等值比较怎么理解”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!