久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合

站長資訊網
最全最豐富的資訊網站

class類是es6語法么

class類是es6語法,是es6新增的一種特性。ES6中,引入了class關鍵字用于快速地定義“類”,但是類的本質是function;它可以看作一個語法糖,讓對象原型的寫法更加清晰、更像面向對象編程的語法。用class定義類的方法“class Person{//類聲明}”或“const Person=class{//類表達式}”。

class類是es6語法么

前端(vue)入門到精通課程:進入學習
Apipost = Postman + Swagger + Mock + Jmeter 超好用的API調試工具:點擊使用

本教程操作環境:windows7系統、ECMAScript 6版、Dell G3電腦。

class類是es6語法,是es6新增的一種特性。

ES6中,引入了class關鍵字用于快速地定義“類”。

在JS中,“類”的本質是function,可以將其看做一個語法糖,讓對象原型的寫法更簡潔清晰,更像面向對象編程的語法。

認識class定義類

我們會發現,按照前面的構造函數形式創建 ,不僅僅和編寫普通的函數過于相似,而且代碼并不容易理解。

在ES6(ECMAScript2015)新的標準中使用了class關鍵字來直接定義類;但是類本質上依然是前面所講的構造函數、原型鏈的語法糖而已;所以學好了前面的構造函數、原型鏈更有利于我們理解類的概念和繼承關系;

那么,如何使用class來定義一個類呢?–可以使用兩種方式來聲明類:類聲明和類表達式;

class Person{     //類聲明 }  const Person=class{     //類表達式 }
登錄后復制

類和構造函數的異同

我們來研究一下類的一些特性:你會發現它和我們的構造函數的特性其實是一致的;

console.log(Person.prototype) console.log(Person.prototype.__proto__)//Object null  console.log(Person.prototype.constructor)//Person console.log(typeof Person) // function  var p = new Person() console.log(p.__proto__ === Person.prototype) // true
登錄后復制

類的構造函數

如果我們希望在創建對象的時候給類傳遞一些參數,這個時候應該如何做呢?

  • 每個類都可以有一個自己的構造函數(方法),這個方法的名稱是固定的constructor;
  • 當我們通過new操作符,操作一個類的時候會調用這個類的構造函數constructor;
  • 每個類只能有一個構造函數,如果包含多個構造函數,那么會拋出異常;

當我們通過new關鍵字操作類的時候,會調用這個constructor函數,并且執行如下操作:

  • 1.在內存中創建一個新的對象(空對象);
  • 2.這個對象內部的[[prototype]]屬性會被賦值為該類的prototype屬性;
  • 3.構造函數內部的this,會指向創建出來的新對象;
  • 4.執行構造函數的內部代碼(函數體代碼);
  • 5.如果構造函數沒有返回非空對象,則返回創建出來的新對象;

類的實例方法

在上面我們定義的屬性都是直接放到了this上,也就意味著它是放到了創建出來的新對象中:

在前面我們說過對于實例的方法,我們是希望放到原型上的,這樣可以被多個實例來共享;

這個時候我們可以直接在類中定義;

class Person {   constructor(name, age) {     this.name = name     this.age = age     this._address = "廣州市"   }    // 普通的實例方法   // 創建出來的對象進行訪問   // var p = new Person()   // p.eating()   eating() {     console.log(this.name + " eating~")   }    running() {     console.log(this.name + " running~")   } }
登錄后復制

類的訪問器方法

我們之前講對象的屬性描述符時有講過對象可以添加setter和getter函數的,那么類也是可以的:

class Person {   constructor(name, age) {     this.name = name     this.age = age     this._address = "廣州市"   }    // 類的訪問器方法   get address() {     console.log("攔截訪問操作")     return this._address   }    set address(newAddress) {     console.log("攔截設置操作")     this._address = newAddress   } }
登錄后復制

類的靜態方法

靜態方法通常用于定義直接使用類來執行的方法,不需要有類的實例,使用static關鍵字來定義:

class Person {   constructor(name, age) {     this.name = name     this.age = age     this._address = "廣州市"   }   // 類的靜態方法(類方法)   // Person.createPerson()   static randomPerson() {     var nameIndex = Math.floor(Math.random() * names.length)     var name = names[nameIndex]     var age = Math.floor(Math.random() * 100)     return new Person(name, age)   } }
登錄后復制

ES6類的繼承 – extends

前面我們花了很大的篇幅討論了在ES5中實現繼承的方案,雖然最終實現了相對滿意的繼承機制,但是過程卻依然是非常繁瑣的。在ES6中新增了使用extends關鍵字,可以方便的幫助我們實現繼承:

class Person{      }  class Student extends Person{      }
登錄后復制

super關鍵字

我們會發現在上面的代碼中我使用了一個super關鍵字,這個super關鍵字有不同的使用方式:注意:在子(派生)類的構造函數中使用this或者返回默認對象之前,必須先通過super調用父類的構造函數!

super的使用位置有三個:子類的構造函數、實例方法、靜態方法;

class類是es6語法么

繼承內置類

我們也可以讓我們的類繼承自內置類,比如Array:

class HYArray extends Array {   firstItem() {     return this[0]   }    lastItem() {     return this[this.length-1]   } }  var arr = new HYArray(1, 2, 3) console.log(arr.firstItem()) console.log(arr.lastItem())
登錄后復制

類的混入mixin

JavaScript的類只支持單繼承:也就是只能有一個父類 。那么在開發中我們我們需要在一個類中添加

贊(0)
分享到: 更多 (0)
?
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合
日本aⅴ免费视频一区二区三区| 蜜桃tv一区二区三区| 国产精品xvideos88| 亚洲一区二区动漫| 亚洲不卡系列| 欧美国产日韩电影| 中文字幕免费一区二区| 久久婷婷丁香| 精品一区视频| 国产精品**亚洲精品| 欧美sss在线视频| 麻豆成人av在线| 91国内精品| 国产欧美激情| 国产另类在线| 精品五月天堂| 国际精品欧美精品| 精品国产亚洲一区二区在线观看| 青青草精品视频| 国产精品对白| 红杏一区二区三区| 日韩精品社区| 久久狠狠久久| 久久的色偷偷| 成人三级高清视频在线看| 国产欧美日韩综合一区在线播放| 午夜在线视频一区二区区别| 亚洲韩日在线| 久久国产精品99国产| 亚洲毛片在线免费| 欧美一区免费| 久久久久久色| 亚洲精品麻豆| 国产麻豆一区二区三区| 成人黄色av| 黄色在线一区| 国产精品一级| 福利片在线一区二区| 久久久精品午夜少妇| 蜜臀av一区二区在线免费观看| 久久精品亚洲人成影院| 亚洲天堂日韩在线| 精品视频一区二区三区四区五区 | 亚洲一区二区三区高清不卡| 美女久久一区| 日韩一区二区三免费高清在线观看 | 男女性色大片免费观看一区二区| 麻豆精品视频在线观看视频| 久久精品亚洲人成影院 | 免费视频一区三区| 亚洲欧美日韩视频二区| 国产精品亚洲一区二区在线观看| av资源新版天堂在线| 91成人精品| 欧美国产另类| 一区二区三区四区日韩| 久久久影院免费| 欧美精品不卡| 亚洲丝袜啪啪| 欧美日韩激情在线一区二区三区| 欧美精品第一区| 日本不卡高清| 亚洲一区二区动漫| 日韩成人亚洲| 超碰在线99| 欧美精品三级在线| 亚洲欧美视频一区二区三区| 日韩中文影院| 欧美激情福利| 日本aⅴ亚洲精品中文乱码| 蜜桃tv一区二区三区| 日韩和的一区二在线| 国产一区二区三区四区| 国产日产一区| 日韩激情综合| 日韩高清在线不卡| 每日更新成人在线视频| 亚洲一区二区三区四区五区午夜| 欧洲一区二区三区精品| 国产成人精品三级高清久久91 | 日韩一区二区三区在线免费观看| 国产欧美午夜| 亚洲我射av| 一区三区视频| 欧美日韩四区| 亚洲深夜影院| 亚洲精品亚洲人成在线观看| 蜜桃久久精品一区二区| 亚洲精品麻豆| 91精品国产经典在线观看| 国产日韩一区二区三区在线播放| 美女毛片一区二区三区四区最新中文字幕亚洲 | 久久影视三级福利片| 欧美精品国产一区| 久久av影视| www.com.cn成人| 欧美+亚洲+精品+三区| 视频一区中文| 日本不卡一二三区黄网| 国产精品中文字幕亚洲欧美| 婷婷精品在线| 国产+成+人+亚洲欧洲在线| 免费一级欧美在线观看视频| 日韩免费看片| 中文字幕免费精品| 国产高清精品二区| 久久久久久久久99精品大| 中文字幕日韩亚洲| 老司机免费视频一区二区| 9999国产精品| 免费观看在线综合色| 精品久久久久中文字幕小说| 99视频精品全国免费| 69堂精品视频在线播放| 人在线成免费视频| 亚洲精品欧美| 精品日韩视频| 日本少妇精品亚洲第一区| 亚洲www免费| 91亚洲精品在看在线观看高清| 精品国产99| 亚洲精品乱码| 99成人在线视频| 日韩午夜视频在线| 亚洲免费观看| 久久精品播放| 精品国产免费人成网站| 日韩精品免费视频一区二区三区| 久久在线免费| 欧美日韩视频网站| 蜜桃久久久久| 一级欧美视频| 久久久久国产精品一区三寸| 日本伊人午夜精品| 99成人超碰| 国产在线欧美| 夜夜嗨av一区二区三区网站四季av| 免费高潮视频95在线观看网站| 国产成人久久| 欧美aa国产视频| 免费一区二区视频| 日韩久久一区| 国产精品videosex极品| 麻豆精品在线观看| 色黄视频在线观看| 久久精品免费一区二区三区| 在线视频日韩| 美日韩精品视频| 亚洲三级网站| 日韩av一区二区三区| 九九九精品视频| 久久精品国产99久久| 日本中文字幕视频一区| 精品视频一区二区三区在线观看| 91精品亚洲| 青青在线精品| 九九精品调教| 综合激情五月婷婷| 成人亚洲一区| 亚洲资源网站| 国产欧美一区二区三区精品酒店| 欧美专区在线| 国产精品任我爽爆在线播放| 久久久天天操| 麻豆国产精品777777在线| 视频一区中文| 国产精品香蕉| 免费日韩av| 成人av三级| 国产福利资源一区| 丝袜美腿一区二区三区| 亚洲黄色网址| 免费看一区二区三区| 噜噜噜久久亚洲精品国产品小说| 精品一区二区三区在线观看视频| 99国产成+人+综合+亚洲欧美| 国产成人精品亚洲线观看| 影院欧美亚洲| 欧美xxxx中国| 精品视频免费| 国产私拍福利精品视频二区| 亚洲一区二区动漫| 国产综合色产| 深夜视频一区二区| 深夜福利视频一区二区| 日本一二区不卡| 欧美韩日一区| 日韩成人精品一区二区| 精品国产亚洲一区二区三区在线| 日韩久久一区| 国产欧美高清视频在线| 91福利精品在线观看| 免费日韩精品中文字幕视频在线| 91精品精品| 欧美日韩一二三四| 欧美日韩激情在线一区二区三区| 亚洲五月婷婷| 久久av一区| 欧美亚洲免费| 老司机免费视频一区二区三区|