初級 › == が意図しない型変換で真になってしまう(===との違い) › パターン3
== が意図しない型変換で真になってしまう(===との違い)
==は比較の前に両辺の型をそろえようとするため、文字列の"0"や空文字列、falseなどが数値の0と等しいと判定されてしまいます。
1 function isZero(input) { 2 return input ___ 0; ^ 3 } 4 console.log(isZero(""));
出力: true期待: false (エラーにはなりません)
空欄を埋めて実行を通す
空文字列""は==で数値と比較されると0に変換されます。""と0は別の値なので、型まで確認する===で防げます。
次の問題