ES6中類的構(gòu)造函數(shù)和原型構(gòu)造函數(shù)
在ES6中,我們可以使用class關(guān)鍵字來定義一個(gè)類,并通過實(shí)例化對(duì)象來訪問對(duì)象的構(gòu)造函數(shù)和類的原型上的構(gòu)造函數(shù)。下面我們以一個(gè)名為Sames的類為例進(jìn)行說明。第一步:定義類和方法首先,我們打開HBu
在ES6中,我們可以使用class關(guān)鍵字來定義一個(gè)類,并通過實(shí)例化對(duì)象來訪問對(duì)象的構(gòu)造函數(shù)和類的原型上的構(gòu)造函數(shù)。下面我們以一個(gè)名為Sames的類為例進(jìn)行說明。
第一步:定義類和方法
首先,我們打開HBuilderX工具,新建一個(gè)JavaScript文件,并定義一個(gè)類Sames。在Sames類中,我們添加了一個(gè)構(gòu)造函數(shù),并傳入?yún)?shù)name。除此之外,我們還新增了一個(gè)名為buildData的方法。
```javascript
class Sames {
constructor(name) {
name;
}
buildData() {
// 實(shí)現(xiàn)具體邏輯
}
}
```
第二步:實(shí)例化對(duì)象
接著,我們可以對(duì)Sames類進(jìn)行實(shí)例化,創(chuàng)建一個(gè)名為sames的對(duì)象。
```javascript
const sames new Sames("example");
```
第三步:比較構(gòu)造函數(shù)
我們可以通過比較對(duì)象的構(gòu)造函數(shù)與類的原型上的構(gòu)造函數(shù)是否一致來驗(yàn)證它們是否相同。
```javascript
console.log( Sames); // 輸出 true
```
第四步:擴(kuò)展原型方法
如果我們想給Sames類的原型添加一個(gè)名為queryNames的方法,我們可以使用()進(jìn)行擴(kuò)展。
```javascript
(, {
queryNames() {
// 實(shí)現(xiàn)具體邏輯
}
});
```
第五步:引入js文件
為了使用已經(jīng)定義好的Sames類,我們需要在HTML5靜態(tài)頁面中引入對(duì)應(yīng)的js文件。
```html
```
第六步:調(diào)用對(duì)象原型構(gòu)造函數(shù)
最后,如果我們發(fā)現(xiàn)打印結(jié)果為false,表示對(duì)象的構(gòu)造函數(shù)并未指向類的原型構(gòu)造函數(shù),我們可以手動(dòng)將其改為對(duì)象的構(gòu)造函數(shù)。
```javascript
sames.__proto__.constructor Sames;
console.log( Sames); // 輸出 true
```
通過以上步驟,我們可以在ES6中正確地使用類的構(gòu)造函數(shù)和原型上的構(gòu)造函數(shù),并進(jìn)行相應(yīng)的操作和擴(kuò)展。