JavaScript隨筆(1)
延遲腳本
HTML4.01為<script>標簽定義了defer屬性。//腳本會被延遲到整個頁面都解析完畢了再運行
例:<script type="text/javascript" defer="defer" scr="test1.js"><script>
*延遲腳本不一定按照順序執行,因此最好只包含一個延遲腳本
defer屬性只適用於外部腳本文件。
嚴格模式
"user strict"
變量
雖然省略了var操作符可以定義全局變量,但這也不是我們推薦的做法。因為在局部函數中定義全局變量很難維護,而且如果有意的忽略了var操作符,也會由於相應變量不會馬上就有定義而導致不必要的混亂
類型
ECMAScript中有5種簡單數據類型(也稱之為基本數據類型):Undefined、Null、Boolean、Number和String以及一種復雜數據類型Object
typeof操作符
用於檢測給定變量的數據類型
typeof(message)或者typeof message *圓括號不是必須的
Undefined 在使用var聲明變量但未對其加以初始化時,這個變量的值就是Undefined
Null
如果定義的變量準備將來用於保存對象,那麽最好將該變量初始化為null而不是其他值(因為null 的typeof 值為Object)
*alert(null==undefined); //true
Number
前導零將會被忽略,後面的數值將被當做十進制解析
如果浮點數本身表示的是一個整數(如1.0)那麽該值也會被轉換為整數
NaN
用於表示一個本來要返回數值的操作數未返回數值的情況
NaN與任何值都不相等,包括NaN本身。
isNaN
任何不能被轉換為數值的值都會導致這個函數返回True
數值轉換
有3個函數可以把非數值轉換為數值1.Number() 2.parseInt() 3.parseFloat()
第一個函數Number()可以用於任何數據類型,而另外兩個函數則專門用於把字符串轉換成數值。
Number()如果要轉換的數值是underfine,返回NaN
parseInt()會忽略字符串前面的空格。如果第一個字符不是數字字符或者負號,parseInt()就會返回NaN.
JavaScript隨筆(1)