說到數(shù)據(jù)類型,首先要說一下與數(shù)據(jù)類型相關(guān)的一個特殊操作符 <code>typeof</code> 。鑒于ECMAScript 是松散類型,特意用 <code>typeof</code> 操作符來檢測給定變量的數(shù)據(jù)類型。
var message = " some string " ;
alert ( typeof message ) ; //"string"
alert ( typeof (message) ) ; //"string"
alert ( typeof 95 ) ; //"number"
注意:對于變量,最好要先聲明再使用。
- 字符串類型
<code>var carname = "Bill Gates" ;
var carname = 'BIll Gate' ;
</code>
字符串類型可以是引號中的任意文本,可以用單引號也可以用雙引號。 - 數(shù)字類型
<code>var x1 = 23.00 ;
var x2 = 23 ;
</code>
javascript只有一種數(shù)字類型,可以是帶小數(shù)點,也可以不帶。
極大或極小數(shù)可以用科學計數(shù)法書寫。如:
<code>var y = 123e5 ; // 12300000</code> - 布爾類型
只有兩種類型:<code>true</code> 或 <code>false</code> ;
<code>var x = true ;
var y = false ;
</code> - 數(shù)組類型(Object 類型的一種,在這里先不詳細介紹Object類型)
javascript中我認為比較重要的數(shù)據(jù)類型。
下面代碼創(chuàng)建了一個cars的數(shù)組:
var cars = new Array() ;
cars[0] = "Audi" ;
cars[1] = "BMW" ;
cars[2] = "Volvo" ;
或者:
<code>var cars = new Array("Audi", "BMW", "Volvo"); </code>
- Undefined 類型
Undefined 類型只有一個特殊的 <code>undefined</code> 值。如使用 <code>var</code> 聲明變量但是不對變量進行初始化時,這個變量的值就是 <code>undefined</code> 。例如:
<code>var message ; // message = undefined</code>
特殊地:
var message ; //聲明了變量,但是沒有初始化,即默認值為undefined;
//下面這個變量沒有聲明
//var age ;
alert( typeof message ); //"undefined"
alert( typeof age ); //"undefined"
alert( age ); //產(chǎn)生錯誤
- Null 類型
Null 類型和undefined 類型一樣,只有一個值,這個特殊的值為 <code>null</code>。從邏輯角度來看,null 值表示一個空對象指針。 typeof 操作符對 null 值檢測會返回 <code>object</code>。
值得注意的是,undefined 值派生于 null 值,因此兩者是相等的。
<code>alert( undefined == null ) //true </code>
不過盡管兩者的值相等,但是作用是完全不同的。