日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

ES6深入学习记录(一)class方法相关

發布時間:2023/11/27 生活经验 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ES6深入学习记录(一)class方法相关 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

今天學習class相關的一些使用方法,著重在于class extends

?class之間可以通過extends關鍵字實現繼承,這比ES5的通過修改原型鏈實現繼承,要清晰和方便很多。

上面的代碼定義了一個?Test 類,該類通過?extends?關鍵字,繼承了?Point?類的所有屬性和方法。但是由于沒有部署任何代碼,所以這兩個類完全一樣,等于復制了一個Point類。

super 方法

代碼中,constructor?方法和?toString 方法之中都出現了?super?關鍵字,它在這里表示父類的構造函數,用來新建父類的this對象

子類必須在 constructor 方法中調用 super 方法,否則新建實例時會報錯。這是因為子類沒有自己的 this 對象,而是繼承父類的 this 對象,然后對其進行加工。如果不調用 super 方法,子類就得不到this 對象。說白了,super 方法就是子類繼承父類 this 對象的一個方法。

?

?

?

上面是生成子類實例的代碼,實例對象 cd 同時事 Test 和 Point 兩個類的實例,這與ES5的行為完全一致。

?

類的 prototype 屬性 和 __proto__ 屬性 (還挺重要的,涉及原型鏈)

在es5實現上,每一個對象都有 __proto__ 屬性,指向對應的構造函數的 prototype 屬性。class 作為構造函數的語法糖,同時有prototype 屬性和__proto__ 屬性,因此同時存兩條繼承鏈。

  1. 子類的 __proto__ 屬性,表示構造函數的繼承,總是指向父類

  2. 子類的 prototype 屬性的 __proto__ 屬性,表示方法的繼承,總是指向父類的 prototype 屬性

?

上面的代碼中,子類B的 __proto__ 屬性 指向父類A,子類B的 prototype 屬性的__proto__屬性指向父類A的prototype屬性

總結:今天學習了 class extends 繼承的原理,以及一些關于原型鏈的拓展。

轉載于:https://www.cnblogs.com/tim100/p/6102810.html

總結

以上是生活随笔為你收集整理的ES6深入学习记录(一)class方法相关的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。