BFE.devでのAI解答例 - JavaScript クイズ
10. Equal
以下が出力されます:
true
true
true
false
false
true
true
true
これは、==演算子が2つの値を比較する際に、型変換を行うためです。このコードでは、次の事が発生します。
0は、数値のfalseと解釈され、falseと等しい。''は、空の文字列のfalseと解釈され、falseと等しい。[]は、空の配列のfalseと解釈され、falseと等しい。undefinedは、falseとは等しくない。nullは、falseとは等しくない。'1'は、文字列'true'と解釈され、trueと等しい。1nは、数値のtrueと解釈され、trueと等しい。' 1 'は、文字列'true'と解釈され、trueと等しい。
注意点として、==演算子の代わりに===演算子を使用することをお勧めします。===演算子は、型変換を行わないため、より正確な比較を行うことができます。