JavaScript 數(shù)據(jù)類型

javascript 數(shù)據(jù)類型

javascript 數(shù)據(jù)類型包括:字符串值,數(shù)值,布爾值,數(shù)組,對象等。

 

1. javascript 數(shù)據(jù)類型

javascript 變量能夠保存多種數(shù)據(jù)類型:數(shù)值、字符串值、數(shù)組、對象等等:

var length = 7; // 數(shù)字
var lastname = "gates";  // 字符串
var cars = ["porsche", "volvo", "bmw"];   // 數(shù)組
var x = {firstname:"bill", lastname:"gates"}; // 對象 

 

2. 數(shù)據(jù)類型的概念

在編程過程中,數(shù)據(jù)類型是重要的概念。

為了能夠操作變量,了解數(shù)據(jù)類型是很重要的。

如果沒有數(shù)據(jù)類型,計算機(jī)就無法安全地解決這道題:

var x = 911 + "porsche";

給 "volvo" 加上 911 有意義嗎?這么做會發(fā)生錯誤還是會產(chǎn)生一個結(jié)果?

javascript 會這樣處理上面的例子:

var x = "911" + "porsche";

當(dāng)數(shù)值和字符串相加時,javascript 將把數(shù)值視作字符串。

范例

var x = 911 + "porsche";

范例

var x = "porsche" + 911;

javascript 從左向右計算表達(dá)式。不同的次序會產(chǎn)生不同的結(jié)果:

javascript:

var x = 911 + 7 + "porsche";

結(jié)果:

918porsche

javascript:

var x = "porsche" + 911 + 7;

結(jié)果:

porsche9117

在第一個例子中,javascript 把 911 和 7 視作數(shù)值,直到遇見 "porsche"。

在第二個例子中,由于第一個操作數(shù)是字符串,因此所有操作數(shù)都被視為字符串。

 

3. javascript 擁有動態(tài)類型

javascript 擁有動態(tài)類型。這意味著相同變量可用作不同類型:

范例

var x;               // 現(xiàn)在 x 是 undefined
var x = 7;           // 現(xiàn)在 x 是數(shù)值
var x = "bill";      // 現(xiàn)在 x 是字符串值

 

4. javascript 字符串值

字符串(或文本字符串)是一串字符(比如 "bill gates")。

字符串被引號包圍。您可使用單引號或雙引號:

范例

var carname = "porsche 911";   // 使用雙引號
var carname = 'porsche 911';   // 使用單引號

您可以在字符串內(nèi)使用引號,只要這些引號與包圍字符串的引號不匹配:

范例

var answer = "it's alright";             // 雙引號內(nèi)的單引號
var answer = "he is called 'bill'";    // 雙引號內(nèi)的單引號
var answer = 'he is called "bill"';    // 單引號內(nèi)的雙引號

 

5. javascript 數(shù)值

javascript 只有一種數(shù)值類型。

寫數(shù)值時用不用小數(shù)點均可:

范例

var x1 = 34.00;     // 帶小數(shù)點
var x2 = 34;        // 不帶小數(shù)點

超大或超小的數(shù)值可以用科學(xué)計數(shù)法來寫:

范例

var y = 123e5;      // 12300000
var z = 123e-5;     // 0.00123

 

6. javascript 布爾值

布爾值只有兩個值:true 或 false。

范例

var x = true;
var y = false;

布爾值經(jīng)常用在條件測試中。

 

7. javascript 數(shù)組

javascript 數(shù)組用方括號書寫。

數(shù)組的項目由逗號分隔。

下面的代碼聲明(創(chuàng)建)了名為 cars 的數(shù)組,包含三個項目(汽車品牌):

范例

var cars = ["porsche", "volvo", "bmw"];

數(shù)組索引基于零,這意味著第一個項目是 [0],第二個項目是 [1],以此類推。

 

8. javascript 對象

javascript 對象用花括號來書寫。

對象屬性是 name:value 對,由逗號分隔。

范例

var person = {firstname:"bill", lastname:"gates", age:62, eyecolor:"blue"};

上例中的對象(person)有四個屬性:firstname、lastname、age 以及 eyecolor。

 

9. typeof 運算符

您可使用 javascript 的 typeof 來確定 javascript 變量的類型:

typeof 運算符返回變量或表達(dá)式的類型:

范例

typeof ""                  // 返回 "string"
typeof "bill"              // 返回 "string"
typeof "bill gates"          // 返回 "string"

范例

typeof 0                   // 返回 "number"
typeof 314                 // 返回 "number"
typeof 3.14                // 返回 "number"
typeof (7)                 // 返回 "number"
typeof (7 + 8)             // 返回 "number"

typeof 運算符對數(shù)組返回 "object",因為在 javascript 中數(shù)組屬于對象。

 

10. undefined

在 javascript 中,沒有值的變量,其值是 undefined。typeof 也返回 undefined。

范例

var person;                  // 值是 undefined,類型是 undefined

任何變量均可通過設(shè)置值為 undefined 進(jìn)行清空。其類型也將是 undefined。

范例

person = undefined;          // 值是 undefined,類型是 undefined

 

11. 空值

空值與 undefined 不是一回事。

空的字符串變量既有值也有類型。

范例

var car = "";                // 值是 "",類型是 "string"

 

12. null

在 javascript 中,null 是 "nothing"。它被看做不存在的事物。

不幸的是,在 javascript 中,null 的數(shù)據(jù)類型是對象。

您可以把 null 在 javascript 中是對象理解為一個 bug。它本應(yīng)是 null。

您可以通過設(shè)置值為 null 清空對象:

范例

var person = null;           // 值是 null,但是類型仍然是對象

您也可以通過設(shè)置值為 undefined 清空對象:

范例

var person = undefined;     // 值是 undefined,類型是 undefined

 

13. undefined 與 null 的區(qū)別

undefined 與 null 的值相等,但類型不相等:

typeof undefined              // undefined
typeof null                   // object
null === undefined            // false
null == undefined             // true

 

14. 原始數(shù)據(jù)

原始數(shù)據(jù)值是一種沒有額外屬性和方法的單一簡單數(shù)據(jù)值。

typeof 運算符可返回以下原始類型之一:

  • string
  • number
  • boolean
  • undefined

范例

typeof "bill"    // 返回 "string"
typeof 3.14     // 返回 "number"
typeof true     // 返回 "boolean"
typeof false    // 返回 "boolean"
typeof x        // 返回 "undefined" (假如 x 沒有值)

 

15. 復(fù)雜數(shù)據(jù)

typeof 運算符可返回以下兩種類型之一:

  • function
  • object

typeof 運算符把對象、數(shù)組或 null 返回 object。

typeof 運算符不會把函數(shù)返回 object。

范例

typeof {name:'bill', age:62} // 返回 "object"
typeof [1,2,3,4]             // 返回 "object" (并非 "array",參見下面的注釋)
typeof null                  // 返回 "object"
typeof function myfunc(){}   // 返回 "function"

typeof 運算符把數(shù)組返回為 "object",因為在 javascript 中數(shù)組即對象。

下一節(jié):js 函數(shù)

js 教程

相關(guān)文章
亚洲国产精品第一区二区,久久免费视频77,99V久久综合狠狠综合久久,国产免费久久九九免费视频