nan 在 javascript 中表示“非數字”,在以下情況下產生:字符串轉數字時非數字、無值算術運算、nan 算術運算。nan 不能常規比較,需用 number.isnan() 函數。nan 常用于處理不可表示為數字的數據,讓程序在遇到無效數據時給出合理響應。
什么是 NaN
NaN 在 JavaScript 中代表“非數字”(Not a Number),是一種特殊的值,用于表示無法表示為數字的情況。
產生的場景
NaN 通常在以下情況下產生:
嘗試將非數字字符串轉換為數字時,例如 “abc”.
嘗試對沒有值的操作數執行算術運算,例如 0/0。
使用 NaN 值作為輸入值執行算術運算。
比較 NaN
使用常規比較運算符(== 或 ===)無法將 NaN 與任何其他值比較。任何與 NaN 的比較總是返回 false。
為此,應使用 Number.isNaN()
函數,它接受一個參數并返回一個布爾值,指示該參數是否是 NaN。
操作 NaN
對 NaN 執行算術運算的結果通常為 NaN,除非與數字進行比較。例如:
NaN + 10 = NaN
NaN * 3 = NaN
NaN > 0 = false
NaN === NaN = false
NaN 的用途
NaN 對于處理不可表示為數字的數據非常有用。它允許程序在遇到無效數據時做出適當的響應,例如顯示錯誤消息或返回默認值。