1. 程式人生 > >ES類(定義建構函式並生成物件)

ES類(定義建構函式並生成物件)

JavaScript定義建構函式並生成物件的傳統方式

function  Test(x,y){

this.x=  x;

this.y = y

}

test.prototype.sum(){

return this.x+this.y;

}

var t = new Test(200,10);

console.log(t.sum());

ES6定義建構函式並生成物件的方式

class Test{

constructor(x,y)

{

this.x = x;

this.y =y;

}

sum(){

return this.x + this.y;

}

}

var t  =new Test(100,3);

console.log(t.sum());

定義構造器,並生成物件

JavaScript通過構造器,原型鏈生成方法,再生成物件,從而實現具體功能

Es6通過一個大的類,在裡面使用(constructor)構造器,生成方法,在大類的外邊生成物件,從而實現具體功能

this是物件,誰打點呼叫,誰就是this

會為我們建立一個空的constructor,他只負責建立一個物件,返回this指向t,通過t.sum()訪問我們的方法

類的constructor方法

constructor方法是類的預設方法,可以通過new命令來生成物件例項時,自動呼叫該方法,一個類必須要有constructor,如果沒有顯示定義,JavaScript引擎會自動為你新增一個空的constructor方法

類必須使用new來呼叫

注:類的方法內部如果含有this關鍵字,她將預設指向類的例項