前端基礎 ECMAScript類和物件

2021-10-04 10:32:02 字數 1197 閱讀 7579

es6中新增了對類的支援,引入了class關鍵字

es6中提供的類實際上只是js原型模式的包裝。現在提供class支援後,物件的建立、繼承更加直觀。

class類中,可以包含 構造方法、例項方法、靜態方法。

//類的定義

class

a//例項方法

say(

)//靜態方法(靜態方法與例項方法 同名互不影響)

static

say()}

//直接呼叫靜態方法a.

say();

//例項化類 呼叫例項方法

var a =

newa

('tom');

a.say()

;//類也有原型物件

console.

log(

a.prototype)

;console.

log(a.__proto__)

注意

1.class類中不能直接定義屬性,只能定義方法,方法之間不需要也不能使用逗號隔開

2.類只能先定義,再使用,沒有提公升效果。

3.靜態方法只能通過類名直接呼叫,例項方法只能將例項化成物件後呼叫。

注:父類有建構函式,子類建構函式中,需要呼叫super() 實現父類的建構函式,否則報錯。

//類的繼承

//父類a

class

a//例項方法

say(

)//靜態方法

static

say()}

//子類b

class

bextends

a//例項方法

//子類方法 會覆蓋父類同名方法

say(

)static

coding()

}//呼叫靜態方法b.

say();

//a的靜態方法b.

coding()

;//b自己的靜態方法

//呼叫例項方法

var b =

newb

('lucy');

b.say()

;//b中的例項方法say //如果b中沒有,才呼叫a的例項方法say

b.coding()

;//報錯,b和a中都沒有例項方法coding (只有靜態方法)

前端基礎 ECMAScript解構(拆包)

在es6中,可以使用解構從陣列和物件提取值並賦值給獨特的變數,即將陣列或物件中的值,拆成乙個乙個變數。解構 自動解析陣列或物件中的值,並賦值給指定的變數。將陣列中的值,取出並賦值給多個變數 var arr 3 4,5 var a,b,c arr console.log a,b,c 還可以忽略值 需要...

ECMAScript 基礎注意點

1.在 ecmascript 中,變數可以存在兩種型別的值,即原始值和引用值 原始值 儲存在棧 stack 中的簡單資料段,也就是說,它們的值直接儲存在變數訪問的位置。引用值 儲存在堆 heap 中的物件,也就是說,儲存在變數處的值是乙個指標 point 指向儲存物件的記憶體處 2.為變數賦值時,e...

ECMAScript基礎(關鍵字,保留字)

關鍵字 break,else,new,var,case,finally,return,void,catch,for,switch,while,continue,function,this,with,default,if,throw,delete,in,try,do,instanceof typeof...