即非數值 是一個特殊的「數值」,這個數值用於表達一個原本要返回數值的操做數可是未返回數值的狀況,好比:
這種數據的運算是比較常見的,可是由於js是弱類型語言,咱們能夠把任何可能性的變量放入這個表達式中
因爲這個表達式作的是數值運算原本指望的是產出一個數值,可是因爲咱們乘了一個字符串致使運算的失敗,固然不會運算出咱們想要數值的這種結果,因而結果就是「NaN」,即「Not a Number」,這種狀況多發生與你忘記把字符串類型轉化成數值類型,可是仍是「自信滿滿的」進行計算了,NaN自己有兩個特色:首先NaN與任何值都不相等,包括與NaN自己
其次任何涉及到NaN的操做/運算都會返回NaN
針對NaN的特色,js專門定義了一個函數:isNaN(),這個函數只接受一個參數,該參數能夠是任何類型,這個函數的做用是幫助咱們判斷是否是Not a Number