創建你自己的 JavaScript 對象 – Javascript教程_JS教程_技術文章 – 程式設計聯盟

 

JavaScript 對象

對象僅僅是一種特殊的數據類型而已,並擁有一系列的屬性和方法。讓我們用一個例子來理解:一個人就是一個對象。屬性是和對象有關的值。人的屬性包括其名字、身高、體重、年紀、膚色、眼睛的顏色等等。所有的人都有這些屬性,但是每個人的屬性的值卻各不相同。對象也擁有方法。方法是可施加於對象上的行為。人的方法可能是吃、睡、工作、玩等等。

 

屬性

訪問對象的屬性的方法:

對象名.屬性

通過簡單地向屬性賦值,你就可以向對象添加屬性。假定存在personObj 這個對象 - 你可以添加諸如firstname、lastname、age 以及eyecolor 等屬性。

personObj.firstname="John" personObj.lastname="Doe" personObj.age=30 personObj.eyecolor="blue" document.write(personObj.firstname)

上面的代碼生成以下的輸出:

John

方法

對象可包含方法。

使用下面的語法來調用方法:

對象名.方法名()

註意:位於括號之間的用於方法的參數是可以省略的。

調用名為sleep 的personObj 對象的方法:

personObj.sleep()

創建你自己的對象

有多種不同的辦法來創建對象:

1. 創建對象的實例

下列代碼創建瞭一個對象的實例,並向其添加瞭四個屬性:

personObj=new Object() personObj.firstname="John" personObj.lastname="Doe" personObj.age=50 personObj.eyecolor="blue"

向personObj 添加方法也很簡單。下列代碼向personObj 添加瞭名為eat() 的方法:

personObj.eat=eat

2. 創建對象的模版

模版定義瞭對象的結構。

function person(firstname,lastname,age,eyecolor) { this.firstname=firstname this.lastname=lastname this.age=age this.eyecolor=eyecolor }

註意:模版僅僅是一個函數。你需要在函數內部向this.propertiName 分配內容。

一旦擁有模版,你就可以創建新的實例,就像這樣:

myFather=new person("John","Doe",50,"blue") myMother=new person("Sally","Rally",48,"green")

同樣可以向person 對象添加某些方法。並且同樣需要在模版內進行操作:

function person(firstname,lastname,age,eyecolor) { this.firstname=firstname this.lastname=lastname this.age=age this.eyecolor=eyecolor this.newlastname=newlastname }

註意:方法隻是依附於對象的函數而已。然後,我們需要編寫newlastname() 函數:

function newlastname(new_lastname) { this.lastname=new_lastname }

Newlastname() 函數定義person 的新的lastname,並將之分配給person。通過使用 “this.”,JavaScript 即可得知你指的person 是誰。因此,現在你可以這樣寫:myMother.newlastname("Doe")。

 

摘自 youhaoxinqin的專欄

發佈留言