-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 に答える