es6 知識總結 4

2021-09-16 18:48:58 字數 1616 閱讀 7736

我們在程式設計過程中常常用到物件導向,物件建立例項這個方法,但是es6中給我封裝了乙個class類

下邊給大家介紹一下!

//萬事萬物皆物件

//1.類是由物件(抽象)泛化出來的

//2.物件是由類建立出來的

//3.物件叫類的具體例項

function person(name,age)

person.prototype.run=function()

var weiwei=new person("weiwei",21);

console.log(weiwei)

function superman(name,age,***,body)

superman.prototype=object.create(person.prototype);//繼承了父類的方法

//自己的方法 多型

superman.prototype.fly=function()

var chaoren=new superman("大剛",24,"男","大")

es6 中有 class 語法。值得注意是,這裡的 class 不是新的物件繼承模型,它只是原型鏈的語法糖表現形式。

提供了類來建立物件導向程式設計

class student

run()

}class superman extends student

eat(obejectname)

get xm()

set xm(value)

static shangxue()

}

let student1 = new student('咪咪',18);

let student2 = new superman("小明",21,007)

student2.eat("蘋果");

//set get 方法

console.log(student2.xm) //get 呼叫方法不用括號(); get獲取

student2.xm="小紅"

console.log(student2.xm)

// student2.shangxue()

superman.shangxue();

上面**首先用class定義了乙個「類」,可以看到裡面有乙個constructor方法,這就是構造方法,而this關鍵字則代表例項物件。簡單地說,constructor內定義的方法和屬性是例項物件自己的,而constructor外定義的方法和屬性則是所有例項物件可以共享的。

class之間可以通過extends關鍵字實現繼承,這比es5的通過修改原型鏈實現繼承,要清晰和方便很多。上面定義了乙個cat類,該類通過extends關鍵字,繼承了animal類的所有屬性和方法。

super關鍵字,它指代父類的例項(即父類的this物件)。子類必須在constructor方法中呼叫super方法,否則新建例項時會報錯。這是因為子類沒有自己的this物件,而是繼承父類的this物件,然後對其進行加工。如果不呼叫super方法,子類就得不到this物件。

關鍵字 class, extends, super

es6常用知識總結

es6已經出了2年左右的時間了,雖然部分瀏覽器沒有支援es6,不過在babel等幫助下,我們依然可以使用es6相關的內容,現在對es6常用內容的總結。變數結構是按照一堆的規則從陣列或者物件中提取值並賦予給變數。陣列解構 let x,y,z 1,2,3 console.log x 1 console....

ES6新增知識小總結

es6 es6中新增的宣告變數的方式 let關鍵字用來宣告變數,類似於var,但是使用let宣告的變數有以下幾點特性 1.不存在變數提公升 2.暫時性死區 tdz 3.不允許重複宣告,同一作用域內只能宣告一次 4.新增的塊級作用域 for 作用域a 迴圈的應用 const關鍵字用來宣告常量,其使用規...

ES6知識點總結

面向過程和物件導向的對比 面向過程 物件導向 物件 物件是由屬性和方法組成的 類 class 在 es6 中新增加了類的概念,可以使用 class 關鍵字宣告乙個類,之後以這個類來例項化物件 物件導向的思維特點 抽取 抽象 物件共用的屬性和行為組織 封裝 成乙個類 模板 對類進行例項化,獲取類的物件...