ホームページ > 記事 > ウェブフロントエンド > なぜそうなるのか? lt; true を返しますが gt; gt; JavaScriptでfalseを返しますか?
JavaScript ファンの皆さん!コードが何かおかしな動作をし、頭を悩ませた経験はありませんか?さて、今日は良いものを用意しました。
これをチェックしてください:
console.log(1 < 2 < 3); // true console.log(3 > 2 > 1); // false
ちょっと待って、何? 2つ目は嘘ですか?でも、3 は 2 より大きく、2 は 1 より大きいですよね?それで、ここで何が起こっているのでしょうか?
詳しく見てみましょう:
ここでキッカーです。JavaScript が true を数値と比較すると、true は 1 になります。
実際に何が起こっているのかというと、
これが、最初のものが true で、2 つ目のものが false になる理由です。
クレイジーですね?
それでは、ここから何を学べるでしょうか?複数の比較を行う場合は、明確にすることが望ましいです。 3 の代わりに > 2> 1 の場合、(3 > 2) && (2 > 1) と書くことができます。少し長くなりますが、少なくとも期待どおりの結果が得られます。
以上がなぜそうなるのか? lt; true を返しますが gt; gt; JavaScriptでfalseを返しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。