物件的寫法,分為物件實字和建構式兩種,一般情況下,建議用物件實字,較為簡潔好懂。
寫法如下:
var 物件名稱 = {
屬性A: 值A,
屬性B: 值B
};
屬性是字串,所以可以用數字或是特殊字元命名。
屬性的值可以是純值、物件,甚至函式。
屬性的值後如果還要接第二個屬性,要用半形逗號(,
)區隔,最後一組可以不用加逗號,但若是加了也不會出現錯誤。
var class = {
tracherName: "John",
students: 30,
leaders: ["Rose", "Agnes", "Andy"],
firstFloor: true,
function greeting(){
console.log("Hello!!!");
},
subjectTeacher: {
math: 'Tim',
chinese: 'Meg'
}
};
寫法如下:
var 變數名 = new Object('物件名');
在使用建構式時,若小括弧中包含的是數字,就會建立一個數字的物件,若是字串,就會建立一個包含字串的物件,若是包含的是物件,就會建立一個新的物件了,所以在使用上要特別注意。
var example = {
$: false,
64: true,
"加密檔案": true,
紙質文件: true
};
example.64; //出現錯誤
example."加密檔案"; //出現錯誤
example.$; //可以運行
example["64"]; //可以運行
example.加密檔案; //可以運行
example["加密檔案"]; //可以運行
example.紙質文件; //可以運行
example["紙質文件"]; //可以運行
首先先建立一個空物件,以方便下方說明:
var family = {};
有兩種方式:
family.father = "Bruce";
family.kidsName = ["John", "Jason", "Tim"];
family.haveCar = false;
[]
)包覆要命名的屬性,屬性要接半行引號(''
)family['father'] = "Bruce";
family['kidsName'] = ["John", "Jason", "Tim"];
family['haveCar'] = false;
有兩種方式:
family.father;
family.kidsName[0];
family['father'];
family['kidsName'][0];
這種讀取方式的好處在於可以讀取數字或特殊字元命名的屬性,並可以用變數取值。
ex:
var paper = '紙質文件';
var example = {
$: false,
64: true,
紙質文件: true
};
example.$; //可以運行
example['$']; //可以運行
example.64; //出現錯誤
example["64"]; //可以運行
example[paper]; //可以運行