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