JS 學習筆記 -- NAN && isNaN
阿新 • • 發佈:2019-02-01
blue fine log undefine undefined ons 接受 停止 轉換成
1. NaN :即非數值(Not a Number)是一個特殊的數值,這個數值用於表示一個本來要返回數值的操作數未返回數值的情況(這樣就不會拋出錯誤了)。其他語言可能導致錯誤,代碼停止執行,但在ECMAScript 中,任何數值除以0 會返回NaN①,因此不會影響其他代碼的執行。
特點:任何涉及NaN 的操作(例如NaN/10)都會返回NaN;
NaN 與任何值都不相等,包括NaN 本身;
2. isNaN : 這個函數接受一個參數 (任意類型), isNaN接收到值後,都會轉換為數值。任何不能轉換為數值的的值都會導致其返回true。
console.log(isNaN(NaN)); //true
isNaN(10) // false (10本身是數值)
isNaN("10") //false (可以被轉換成數值10)
isNaN("blue"); //true (不能被轉換為數值)
isNaN(true); // false (可以被轉換成數值1)
3. 數值轉換
Number(null); //0
Number(undefined); //NaN
Number(" "); // 0
JS 學習筆記 -- NAN && isNaN