JavaScript是一門面向?qū)ο蟮木幊陶Z(yǔ)言,因此“對(duì)象”是它的核心概念。在JavaScript中,對(duì)象是一種復(fù)合數(shù)據(jù)類型,它由一組無(wú)序的屬性(property)構(gòu)成,每個(gè)屬性都擁有一個(gè)名字和一個(gè)值。
對(duì)象可以用兩種方法來(lái)創(chuàng)建:
// 方法一:對(duì)象字面量(literal notation) var obj = { name: 'John', age: 30, hobbies: ['music', 'reading'] }; // 方法二:構(gòu)造函數(shù)(constructor) function Person(name, age) { this.name = name; this.age = age; } var john = new Person('John', 30);
上述代碼中的obj和john都是JavaScript對(duì)象。在使用對(duì)象時(shí),可以通過(guò)點(diǎn)(.)操作符或方括號(hào)([])操作符來(lái)訪問(wèn)對(duì)象的屬性。
console.log(obj.name); // 輸出:"John" console.log(john['age']); // 輸出:30
除了屬性,對(duì)象還可以擁有方法(method)。方法是指與對(duì)象相關(guān)聯(lián)的函數(shù)。可以將函數(shù)作為屬性賦值給對(duì)象,這個(gè)函數(shù)就稱為對(duì)象的方法。
var obj = { sayHello: function() { console.log('Hello!'); } }; obj.sayHello(); // 輸出:"Hello!"
對(duì)象可以通過(guò)下面的方法來(lái)添加、刪除、查找和修改屬性。
// 添加屬性 obj.newProp = 'new property'; // 刪除屬性 delete obj.age; // 查找屬性 console.log('name' in obj); // 輸出:true // 修改屬性 obj.name = 'Tom';
對(duì)象的屬性和方法也可以是一個(gè)函數(shù)。
var obj = { name: 'John', sayHello: function() { console.log('Hello, my name is ' + this.name); } }; obj.sayHello(); // 輸出:"Hello, my name is John"
在JavaScript中,所有對(duì)象都是動(dòng)態(tài)的(dynamic),這意味著我們可以在運(yùn)行時(shí)添加、刪除和修改屬性和方法,而不需要重新定義對(duì)象。
總之,JavaScript對(duì)象是這門語(yǔ)言中的首要元素。它允許我們創(chuàng)建一個(gè)包含屬性和方法的復(fù)合數(shù)據(jù)類型,以及對(duì)這些屬性和方法進(jìn)行操作。使用對(duì)象可以使我們的代碼更加清晰、易于組織和維護(hù),是JavaScript編程中不可或缺的一步。