Rog*_*ger 59 javascript syntax
可能的重复:
Javascript === vs ==:我使用哪个"相等"运算符是否重要?
Javascript运算符!==
看看这个提交
是!=同!==在JavaScript?
[1]:
Ama*_*ere 109
它们巧妙地不一样.
!= 检查值
!==检查值和类型
'1' != 1 // false (these two are the same)
'1' !== 1 // true (these two are **not** the same).
Run Code Online (Sandbox Code Playgroud)
在前面的例子中.表达式的前半部分是字符串,后半部分是整数.
mar*_*inr 14
从
http://en.wikipedia.org/wiki/JavaScript_syntax#Operators
!==不一样
!=不相等
AND"相同意味着相同和相同的类型."
从
http://docstore.mik.ua/orelly/webprog/jscript/ch05_04.htm
"在JavaScript中,数字,字符串和布尔值按值进行比较.另一方面,对象,数组和函数通过引用进行比较."
-
总结一下它们是一样的吗?不,因为有一个额外的测试!==(over!=)类型相同以及相等.
4 !== '4' returns true (and 4 === '4' returns false)
4 != '4' returns false (and 4 == '4' returns true)
Run Code Online (Sandbox Code Playgroud)
最大的区别是!=执行类型强制.也就是说,在检查相等性之前,有效地将一个值强制转换为另一个值.这就是为什么,如Amadiere的回答:
'1' != 1
Run Code Online (Sandbox Code Playgroud)
评估为假.对于== v.===也是如此.通常,避免==和!=,除非您特别希望执行强制.使用===和!==并检查您正在寻找的结果.
| 归档时间: |
|
| 查看次数: |
52194 次 |
| 最近记录: |