上級 › indexOf(NaN)が常に-1を返し、NaNを見つけられない理由 › パターン1
indexOf(NaN)が常に-1を返し、NaNを見つけられない理由
Array.prototype.indexOfは===(厳密等価)で要素を探すため、自分自身とも等しくないNaNを絶対に見つけられません。
1 const values = [1, NaN, 3]; 2 console.log(values.___________(NaN)); ^
出力: -1期待: true (エラーにはなりません)
空欄を埋めて実行を通す
indexOfは===で比較するため、自分自身とも等しくないNaNを絶対に見つけられません。includes()はNaNを特別扱いするSameValueZeroで比較するため正しく検出できます。
次の問題