何时使用===运算符检查JavaScript?

时间:2010-05-22 06:23:53

标签: javascript operators logical-operators

  

可能重复:
  Javascript === vs == : Does it matter which “equal” operator I use?

正如标题所述;什么时候应该在使用JavaScript时使用===运算符检查,何时不使用。

修改:找到更完整的答案here。感谢Mark Byers指出它。

_L

3 个答案:

答案 0 :(得分:13)

是严格类型相等运算符。它不仅检查两个在中是否相等,而且还在相同的类型中进行检查。

在比较数字或字符串时考虑一种情况:

if (4 === 4) // same value and type
{
  // true
}

if (4 == "4") // same value and different type but == used
{
  // true
}

if (4 === "4") // same value but different type
{
  // false
}

这适用于对象和数组。

因此,在上述情况下,您必须明智地选择是使用==还是===

当您确定类型

时,最好使用===

答案 1 :(得分:2)

当您希望抑制隐含的类型转换时。例如:

3 == '3'

true,而这不是:

3 === '3'

Douglas Crockford建议始终使用严格的比较。

答案 2 :(得分:1)

您可以使用它来检查变量的包含值和类型是否与比较的变量相同。