JavaScript有5種簡單數據類型(Undefined,Null,Boolean,Number,String)和一種複雜數據類型Object.只有這六種,再無其餘javascript
可使用typeof來檢查所給的數據是什麼類型。java
typeof 1234; //number typeof "hello"; //string typeof (true); //boolean typeof (message); //undefined typeof (null); //Object
須要注意的是:
1.typeof是一個操做符而不是一個函數,全部能夠不帶括號
2.null的類型是Object,是由於Null是一個空的對象引用函數
在使用var聲明變量,但未對其初始化時,這個變量的值就是undefined,表示未被初始化的值指針
var message; typeof (message); //undefined
Null值表示一個空對象指針,因此使用typeof 檢測時會返回object。
實際上,Undefined也是派生自null,因此下面會返回true:code
alert(null == undefined); //true
在定義一個變量,但暫時還不想對它賦值時,可使用null,不要使用Undefined。對象
Boolean類型有兩個值,true和false。注意這兩個值是區分大小寫的。以下:ip
typeof true; //"boolean" typeof True; //"undefined"
轉換:
要將一個值轉換成boolean值時,可使用Boolean()函數。內存
數值類型分爲整型,浮點型。進制也會不一樣
進制:
八進制前面第一個數必須是0
十六進制前面必須是0x
數值範圍:
數值的大小是根據內存來的,若是超過了內存的限制,最大數會被轉換爲:Infinity,負數會被轉換爲-Infinity。
可使用isFinite()函數檢測數值是否是在(-Infinity,Infinity)之間,若是位於最大數和最小數之間就會返回true.
NaN:
NaN: Not a Number,這個數值表示一個原本要返回數值的操做卻爲返回數值的狀況,這樣就不會拋出錯誤了。字符串
isNaN()函數,會檢測這個參數是否是「不是數值」原型
數值轉換:
數值轉換有三個函數,Number(),parseInt(),parseFloat()。
因爲Number()函數在轉換字符串時比較複雜且不夠合理,所以在處理數值時使用parseInt(),parseFloat()這兩個函數
parseInt()接受兩個參數,第一個參數是要轉換的參數,第二個是要轉換的進制。該轉換有一個特色,會把小數點後面的數字省略,只認整數部分。
parseFloat()將數值轉換成字符串,會解析到第一個小數點後面。此方法只解析十進制,只接受一個參數
parseInt("070",8); //56 parseFloat("12.34.2"); //12.34
Object每一個實例都具備如下方法和屬性: