JavaScript 中 == 和 === 之间的区别
2022-08-29 21:58:30
在 JavaScript 中 和 之间有什么区别?我也见过和运营商。这样的运营商更多吗?==
===
!=
!==
在 JavaScript 中 和 之间有什么区别?我也见过和运营商。这样的运营商更多吗?==
===
!=
!==
看看这里: http://longgoldenears.blogspot.com/2007/09/triple-equals-in-javascript.html
3个等号表示“没有类型强制的平等”。使用三重等于,值在类型上也必须相等。
0 == false // true
0 === false // false, because they are of a different type
1 == "1" // true, automatic type conversion for value only
1 === "1" // false, because they are of a different type
null == undefined // true
null === undefined // false
'0' == false // true
'0' === false // false
===
并且是严格的比较运算符:!==
JavaScript 既有严格的比较,也有类型转换的相等比较。为了相等,要比较的对象必须具有相同的类型,并且:
strict
- 当两个字符串具有相同的字符序列、相同的长度和在相应位置具有相同的字符时,它们是严格相等的。
- 当两个数字在数值上相等时,它们严格相等(具有相同的数字值)。 不等于任何内容,包括 。正零和负零彼此相等。
NaN
NaN
- 如果两个布尔操作数都为真或两个都为假,则两个布尔操作数严格相等。
- 如果两个对象引用相同的 对象,则它们严格相等。
Object
Null
和类型是(但不是 )。[即 () 是,但 () 是Undefined
==
===
Null==Undefined
true
Null===Undefined
false
]