Javascript兩個警告
在Javascript開發中,有兩個警告非常容易出現:undefined 和 NaN。
Undefined
Undefined是指變量未定義或者沒有被初始化。在Javascript中,通過聲明一個變量但沒有給它賦值,這個變量的值將是undefined。如果未聲明變量,任何對它的引用都會導致ReferenceError。
var a; console.log(a); //undefined console.log(b); //ReferenceError: b is not defined
當一個變量聲明但沒有初始化時,賦值undefined通常可以釋放內存。
var a; //聲明變量 ... a = null; //釋放內存
當typeof操作符應用于未聲明的變量時,它將返回undefined:
console.log(typeof b); //undefined
NaN
NaN是指在計算數學時的不合法數字。在Javascript中,當一個操作數不是數字時,嘗試執行數學運算會產生NaN。NaN是不等同于任何數字的非數字值。
console.log(10 / "hello"); //NaN console.log(typeof NaN); //number console.log(NaN === NaN); //false
要檢測一個值是否是NaN,可以使用isNaN()函數:
console.log(isNaN(10 / "hello")); //true console.log(isNaN("hello")); //true console.log(isNaN(100)); //false
結論
要避免在Javascript中出現undefined和NaN,建議對變量進行聲明和初始化。如有必要,可以使用typeof和isNaN()函數來檢查變量是否定義或非數字。
上一篇jquery里打印數據
下一篇jquery里的下載圖標