###### tags: `Javascript` `六角筆記王` # 關於 NaN * NaN 的型別是 number * NaN 的全名是 Not a Number(不是一個數字),非數字 > 你可以想成相乘運算基本上就是用在數字型別上的,所以當你使用 * 運算子時,他會將要運算的值都用 Number 轉成數字再做運算,而若轉換的結果有任何東西為非數字,就會出現 NaN,NaN 是數字型別,能夠與數字進行運算。 ----引用前端助教 Jay * NaN 不能運算 * NaN 可能產生時機: 1. 將"字串"與數字相乘 ```javascript= let myName = "Tom"; let age = 20; let total = myName * age; //字串與數字相乘 console.log(total); //NaN ``` 2. 在 parseInt() 裡放不可能轉型的字串 ```javascript= //parseInt轉換成數字型別 let age2 = parseInt("hello"); //因為hello並非數字,所以使用parseInt轉換數字型別會出現NaN錯誤訊息。 console.log(age2); //NaN console.log(typeof age2); //Number ``` * NaN 存在的目的在告訴你就算不能相乘也會回報你異常 * 如果今天想判斷值是不是 NaN ,可以使用 isNaN()