書 構造器模式

2022-01-11 15:48:21 字數 1821 閱讀 7633

在經典物件導向程式設計語言中,constructor是一種在記憶體中已分配給該物件的情況下,用於初始化新建立物件的特殊方法。 在js中,幾乎所有的東西都是物件——object構造器。

object構造器用於建立特定型別的物件——準備好物件以備使用,同時接受構造器可以使用的引數,以在第一次建立物件時,設定成員屬性和方法的值。

//或者

let newobject = new object()

在object構造器為特定的值建立物件封裝,或者沒有傳遞值時,它將建立乙個空物件並返回它。

將鍵值賦值給乙個物件的四種方法:

//

1newobject.somekey = "holle world"

var key =newobject.somekey//2

newobject["somekey"] = "holle world"

var key = newobject["somekey"]//3

object.defineproperty(newobject, "somekey", )//4

object.definepropert(newobject, ,

"anotherkey":

})//

可以用 1 和 2 中獲取屬性的方法獲取3 和 4 的值

可以繼承的物件:

//

建立司機物件,繼承於person物件

var driver =object.create(person)

//為 driver 設定一些屬性

defineprop(driver, "topspeed", "100mph")

//獲取繼承的屬性

console.log(driver.dateofbirth)

//獲取設定的 100mph

console.log(driver.topspeed)

js不支援類的概念,但它確實支援與物件一起用於 constructor 函式。通過在構造器前面加 new 關鍵字,告訴 js 像使用構造器一樣例項化乙個新物件,並且物件的成員有該函式定義。

在構造器內, this 引用新建立的物件。回顧物件建立,基本的構造器看起來可能是這樣的:

function

car(model, year, miles) }//

用法let civic = new car("honda civic", 2009, 20000)

let modeo = new car("honda modeo", 2010, 9000)

console.log(civic.tostring)

console.log(modeo.tostring)

通過js構造器建立物件後,新物件就會具有構造器原型的所有屬性。

function

car(model, year, miles)

car.prototype.tostring = function

() //

用法let civic = new car("honda civic", 2009, 20000)

let modeo = new car("honda modeo", 2010, 9000)

console.log(civic.tostring)

console.log(modeo.tostring)

設計模式 構造器模式

目錄 一 概述 二 詳解 構造器模式,也稱建構函式模式。物件構造器用於建立特定型別的物件。當用new關鍵字呼叫乙個建構函式建立物件時,函式返回值為this,即建立的物件指向函式中的this,這叫隱士返回。簡單的構造器模式 function person name,age,job var person...

JS設計模式 構造器模式

看過高程書的對這個設計模式應該很熟悉。構造器模式屬於建立型設計模式。那麼什麼是建立型設計模式呢?建立型設計模式專注於處理物件的建立機制。也就是說這類模式,都和建立物件的過程密不可分。除了構造器模式屬於這類模式。還有其他一些設計模式也屬於建立型設計模式。比如 下面還是先來談談構造器模式。在物件導向的程...

JS設計模式 構造器模式

引入 看過高程書的對這個設計模式應該很熟悉。構造器模式屬於建立型設計模式。那麼什麼是建立型設計模式呢?建立型設計模式專注於處理物件的建立機制。也就是說這類模式,都和建立物件的過程密不可分。除了構造器模式屬於這類模式。還有其他一些設計模式也屬於建立型設計模式。比如 工廠模式 抽象模式 原型模式 單例模...