What is exactly the meaning of “===” in javascript?
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
Javascript === vs ==
"=="和"=="的区别是什么?谢谢!
"==="表示没有类型系数的相等。换句话说,如果使用三重等于,则值在类型中也必须相等。
例如
1 2 3 4 | 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
Ripped from my blog: keithdonegan.com
相等运算符(==)
相等运算符(==)检查两个操作数是否相同,如果相同则返回true,如果不同则返回false。
标识运算符(==)
标识运算符检查两个操作数是否"相同"。
这些规则确定两个值是否相同:
- 他们必须有相同的类型。
- 如果数字值具有相同的值,则它们是相同的,除非其中一个或两个值都是NaN。
- 如果字符串值具有相同的值,则它们是相同的,除非字符串的长度或内容不同。
- 如果两个值引用相同的对象、数组或函数,则它们是相同的。
- 如果两个值都为空或未定义,则它们是相同的。
===运算符表示"完全等于",通过值和数据类型进行匹配。
==运算符表示"等于",仅按值匹配。
它测试值和类型的完全相等。
1 2 3 4 5 | given the assignment x = 7 x===7 is true x==="7" is false |
简而言之"=="测试值和类型是否相等:从这里: