javascript中"==="的含义是什么?

40 javascript

可能重复:
Javascript === vs ==

"==="和"=="之间的区别是什么?谢谢!

gla*_*snt 60

'==='表示没有类型coersion的平等.换句话说,如果使用三等于,则值的类型也必须相等.

例如

0==false   // true
0===false  // false, because they are of a different type
1=="1"     // true, auto type coersion
1==="1"    // false, because they are of a different type
Run Code Online (Sandbox Code Playgroud)

资料来源:http://longgoldenears.blogspot.com/2007/09/triple-equals-in-javascript.html


Kei*_*gan 16

从我的博客中删除:keithdonegan.com

平等算子(==)

等于运算符(==)检查两个操作数是否相同,如果它们相同则返回true,如果它们不同则返回false.

身份运营商(===)

身份运算符检查两个操作数是否"相同".

这些规则确定两个值是否相同:

  • 它们必须具有相同的类型.
  • 如果数值具有相同的值,则它们是相同的,除非一个或两个都是NaN.
  • 如果字符串值具有相同的值,则它们是相同的,除非字符串的长度或内容不同.
  • 如果两个值都引用相同的对象,数组或函数,则它们是相同的.
  • 如果两个值都为null或未定义,则它们是相同的.


Rob*_*vey 8

===运算符意味着"完全等于",通过值和数据类型进行匹配.

==运算符表示"等于",仅按值匹配.