ES6之Class學習筆記

2021-09-01 11:37:06 字數 1249 閱讀 9279

prototype 是類或者方法的 方法, _ proto_ 是new 之後的例項的方法。

constructor方法是類的預設方法,通過new命令生成物件例項時,自動呼叫該方法。乙個類必須有constructor方法,如果沒有顯式定義,乙個空的constructor方法會被預設新增。

class

point

// 等同於

class

point

}

類必須使用new呼叫,否則會報錯。這是它跟普通建構函式的乙個主要區別,後者不用new也可以執行。

class

foo}

foo(

)// typeerror: class constructor foo cannot be invoked without 'new'

與 es5 一樣,例項的屬性除非顯式定義在其本身(即定義在this物件上),否則都是定義在原型上(即定義在class上)。

//定義類

class

point

tostring()

}//es5方法定義的類執行下方的結果和上面是一樣的

function

point

(x, y)

point.prototype.

tostring

=function()

;var point =

newpoint(2

,3);

point.

tostring()

// (2, 3)

point.

hasownproperty

('x'

)// true

point.

hasownproperty

('y'

)// true

point.

hasownproperty

('tostring'

)// false

point.__proto__.

hasownproperty

('tostring'

)// true

let person =

newclass

sayname()

}('張三'

,'aaacccc');

person.

sayname()

;// "張三

ES6學習筆記(五) Class和Module

只是乙個語法糖,其功能用es5也能實現,但是比es5更符合類的期待 定義 constructor代表構造方法,而this指向new 生成的例項 定義類方法時,可以不使用function 注意 類的內部所有定義的方法,都是不可列舉的 non enumerable 定義類 class point tos...

JS 學習ES6之 class 的繼承

class 可以通過extends關鍵字實現繼承。在子類繼承父類的時候,在constructor中必須首先呼叫super 方法,然後才能使用this。父類 class point tostring 子類 class colorpoint extends point tostring 子類必須在con...

ES6學習筆記之ES6中的模組

1 import和export基本使用 重點 在es6中新增了js檔案的暴露和引入的新寫法 import和export node es6 require import exports.export module.exports default 使用export const 暴露函式名暴露函式,imp...