8

可能重复:
Javascript === vs ==:我使用哪个“相等”运算符有关系吗?

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

编辑:在这里找到更完整的答案。感谢 Mark Byers 指出。

_L

4

3 回答 3

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
}

这适用于对象和数组。

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

===当您也确定类型时使用它是个好主意

于 2010-05-22T06:25:10.403 回答
2

当您希望禁止隐式类型转换时。例如:

3 == '3'

true,而这不是:

3 === '3'

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

于 2010-05-22T06:25:01.010 回答
1

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

于 2010-05-22T06:26:48.450 回答