js基本Constructor(構造器)

2021-09-02 15:45:33 字數 771 閱讀 8982

js不支援類的概念,單它支援與物件一起用的特殊constructor(構造器)函式。通過在構造器前面加new關鍵字,告訴js想使用構造器一樣例項化乙個新的物件,並且物件成員由該函式定義。在構造器內,關鍵字this引用新建立的物件。基本構造器如下面這個例子:

function car(m,y,s);

}var civic = new car('honda civic',2009,20000);

var mondeo = new car('ford mondeo',2010,5000);

console.log(civic.tostring());

console.log(mondeo.tostring());

這是乙個簡單的構造器,每一次定義新物件,都是使用car構造器建立的。但這個不理想,tostring()函式對每乙個新物件都要分別重新定義。所以要想在所有的car型別例項之間共享就要用到帶原型的構造器,也就是prototype。

function car(m,y,s)

car.prototype.tostring = function();

var civic = new car('honda civic',2009,20000);

var mondeo = new car('ford mondeo',2010,5000);

console.log(civic.tostring());

console.log(mondeo.tostring());

這樣就能讓tostring()函式實現在car物件之間共享了。

JS 原型constructor建構函式

一 物件原型 proto 和建構函式原型物件prototype都有乙個屬性,叫做constructor,稱之為建構函式,主要記錄該物件引用了哪個建構函式,可以讓原型物件重新指向原來的建構函式,這就是為什麼在例項物件中傳遞引數時,建構函式本身不需要寫return返回結果的原因 為了更清晰的看到是否為建...

揭開js之constructor屬性的神秘面紗

1.我們可以利用這個特性來完成下面的事情 物件型別判斷,如 if f.constructor f 123複製 其實 constructor 的出現原本就是用來進行物件型別判斷的,但是constructor 屬性易變,不可信賴。我們有一種更加安全可靠的判定方法 instanceof 操作符。下面 仍然...

建構函式constructor

constructor指的就是物件的建構函式.function fn var foo new fn console.log foo.constructor 從這個例子中,我們可以很清楚地看到foo的建構函式是fn,即foo.constructor fn 函式也是物件,也應該是有建構函式的,那麼函式的...