-8

我发现==对新手来说有点混乱,所以我希望有人解释它是如何工作的。

例如 -

new String("a") == "a" and "a" == new String("a") are both true.
new String("a") == new String("a") is false.

为什么?

4

2 回答 2

1

==被称为比较/相等运算符,它比较 2 个值,但不比较它们的数据类型,例如

1 == '1'将返回true,为了进行更严格的比较,使用===which 也将比较数据类型,因此1 === '1'将返回false

于 2013-09-20T14:41:29.220 回答
0

==是一个比较运算符,意思是“等于”,但不考虑变量类型。

===是一个更严格的比较运算符,意思是“等于和相同的类型”。

因此,如果您有一个值为 的被调用者和一个值为string的被调用者,它们的计算结果如下:numberStr2integernumberInt2

numberStr == numberInt  // evaluates to true
numberStr === numberInt // evaluates to false because types are different
于 2013-09-20T14:42:34.123 回答