javascript複合資料型別有哪些

青灯夜游
發布: 2022-01-27 14:39:53
原創
3919 人瀏覽過

javascript複合資料類型:1、Object類型,是一組由鍵、值組成的無序集合;2、Array類型,是一組有序資料的集合,數組中的每個成員被稱為元素,每個元素的名稱稱為陣列下標;3、Function類型,是一段具有特定功能的程式碼區塊。

javascript複合資料型別有哪些

本教學操作環境:windows7系統、javascript1.8.5版、Dell G3電腦。

JavaScript 中的資料型別可以分為兩種型別:

  • #基本資料型別(值型別):字串(String)、數字(Number)、布林(Boolean)、空(Null)、未定義(Undefined)、Symbol;

  • 引用資料型別(複合資料型別):物件(Object )、陣列(Array)、函數(Function)。

JavaScript的複合資料型別

1、Object 類型

Object資料類型,稱為對象,是一組由鍵、值組成的無序集合。可以用new操作符後面跟著要建立的物件類型的名稱來建立。也可以用字面量表示法來創建。在其中新增不同名稱(包含空字串在內的任意字串)的屬性。

1)建構物件

使用 new 運算子呼叫建構函數,可以建構一個實例物件。具體用法如下:

var objectName = new functionName(args);
登入後複製

參數說明如下:

  • objectName:傳回的實例物件。

  • functionName:建構函數,基本上與普通函數相同,但不需要 return 傳回值,傳回實例對象,在函數內可以使用 this 預先存取。

  • args:實例物件初始化配置參數清單。

範例

下面範例使用不同類型的建構子定義各種實例。

var o = new Object();  //定義一個空物件

var a = new Array();  //定義一個空數組

var f = new Function();  //定義一個空函數

2)物件直接量

使用直接量可以快速建立對象,也是最有效率、最簡單的方法。具體用法如下:

var objectName = {
    属性名1 : 属性值1,
    属性名2 : 属性值2,
    ...
    属性名n : 属性值n
};
登入後複製

在物件直接量中,屬性名稱與屬性值之間透過冒號進行分隔,屬性值可以是任意類型的數據,屬性名稱可以是JavaScript 標識符,或是字串型表達式。屬性於屬性之間透過逗號分隔,最後一個屬性結尾不需要逗號。

在 JavaScript 中,物件類型的鍵都是字串型別的,值則可以是任意資料型別。要取得物件中的某個值,可以使用物件名稱.鍵的形式,如下例所示:

var person = {
    name: 'Bob',
    age: 20,
    tags: ['js', 'web', 'mobile'],
    city: 'Beijing',
    hasCar: true,
    zipcode: null
};
console.log(person.name);       // 输出 Bob
console.log(person.age);        // 输出 20
登入後複製

2、Array 類型

陣列(Array)是一組按順序排列的資料的集合,數組中的每個值都稱為元素(Element),每個元素的名稱(鍵)被稱為數組下標(Index)。數組的長度是彈性的、可讀寫的。

陣列中可以包含任意類型的資料。

在 JavaScript 中定義(建立或宣告)陣列的方法有兩種:建構陣列和陣列直接量。

1)建構陣列

使用 new 運算子呼叫 Array() 類型函數時,可以建構一個新陣列。

範例:

  • 直接呼叫 Array() 函數,不傳遞參數,可以建立一個空數組。

var a = new Array();  //空数组
登入後複製
  • 傳遞多個值,可以建立一個實數組。

var a = new Array(1, true, "string", [1,2], {x:1,y:2});  //实数组
登入後複製

每個參數指定一個元素的值,值得類型沒有限制。參數的順序也是數組元素的順序,數組的 length 屬性值等於傳遞參數的個數。

  • 傳遞一個數值參數,可以定義陣列的長度,也就是包含元素的數量。

var a = new Array(5);  //指定长度的数组
登入後複製

參數值等於陣列 length 的屬性值,每個元素的值預設值為 undefined。

  • 如果傳遞一個參數,值為 1,則 JavaScript 將定義長度為 1 的數組,而不是包含一個元素,其值為 1 的陣列。

var a = new Array(1);
console.log(a[0]);
登入後複製

2)數組直接量

數組直接量的語法格式:在中括號中包含多個值列表,值之間用逗號分隔。

下面程式碼使用陣列直接量定義陣列。

var a = [];  //空数组
var a = [1, true, "0", [1,0], {x:1,y:0}];  //包含具体元素的数组
登入後複製

建議使用數組直接量定義數組,因為數組直接量是定義數組最簡單、最高效的方法。

3、Function 類型

函數(Function)是具有特定功能的程式碼區塊,函數不會自動執行,需要透過函數名稱呼叫才能運行,如下例所示:

function sayHello(name){
    return "Hello, " + name;
}
var res = sayHello("Peter");
console.log(res);  // 输出 Hello, Peter
登入後複製

此外,函數還可以儲存在變數、物件、陣列中,而且函數還可以作為參數傳遞給其它函數,或則從其它函數返回,如下例所示:

var fun = function(){
    console.log("http://c.biancheng.net/js/");
}
function createGreeting(name){
    return "Hello, " + name;
}
function displayGreeting(greetingFunction, userName){
    return greetingFunction(userName);
}
var result = displayGreeting(createGreeting, "Peter");
console.log(result);  // 输出 Hello, Peter
登入後複製

【相关推荐:javascript学习教程

以上是javascript複合資料型別有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板