5

私はコードアカデミーでJavascriptを学んでおり、いくつかの比較を行っていました。私のコードでは、次のことを行いました。

`console.log(1 == 2)`

そして戻ってきFalseました。私もやった:

`console.log(2*2 === 3)`

そしてそれも戻ってきFalseました。間違いを犯していないことを確認するために、次のことを行いました。

`console.log(1 == 1)`

と返さTrue れました 指示は、それが===等しいことを意味することを教えてくれます。

==の代わりに使用することに問題はあり===ますか? そして、どちらを使用するのが良いですか、そしてその理由は何ですか?

あなたが私に与えることができるどんな助けにも感謝します!

4

3 に答える 3

4

== を使用すると値のみが比較され、=== は変数の型も比較されます。

1 == 1 -> true
1 == "1" -> true
1 === 1 -> true
1 === "1" -> false, because 1 is an integer and "1" is a string.

0 == false は true ですが、0 === false は false であるため、関数が 0 または false を返すかどうかを判断する必要がある場合は === が必要です。

于 2013-07-14T20:05:07.587 に答える
3

それは本当に状況に依存します。===ほとんどの場合、それが正しい選択であるため、通常は使用することをお勧めします。

==は類似を
===意味し、等しいことを意味します。オブジェクトタイプを考慮に入れることを意味します。

'1' == 1本当です

1 == 1本当です

'1' === 1偽です

1 === 1本当です

使用==する場合、1 が数値か文字列かは問題ではありません。

于 2013-07-14T20:03:29.757 に答える
2

http://www.w3schools.com/js/js_comparisons.asp

== is equal to || x==8 equals false

=== is exactly equal to (value and type) || x==="5" false

meaning that 5==="5" false; and 5===5 true

結局のところ、必要な比較のタイプによって異なります。

于 2013-07-14T20:05:23.790 に答える