JavaScript中“===”的含义是什么?

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

“===”和“==”之间的差异是什么? 谢谢!


'==='意思是没有类型转换的平等。 换句话说,如果使用三元等值,那么值的类型也必须相同。

例如

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

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


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

平等运算符(==)

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

身份运算符(===)

身份运算符检查两个操作数是否“相同”。

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

  • 他们必须有相同的类型。
  • 如果数值具有相同的值,则它们是相同的,除非其中一个或两个都是NaN。
  • 如果字符串值具有相同的值,则它们是相同的,除非字符串的长度或内容不同。
  • 如果两个值都指向相同的对象,数组或函数,则它们是相同的。
  • 如果两个值都为空或未定义,则它们是相同的。

  • ===运算符的意思是“完全等于”,通过值和数据类型进行匹配。

    ==运算符的意思是“等于”,仅按值匹配。

    链接地址: http://www.djcxy.com/p/3239.html

    上一篇: What is exactly the meaning of "===" in javascript?

    下一篇: What is the difference between public, private, and protected?