類相當於例項的原型,所有在類中定義的方法,都會被例項繼承。如果在乙個方法前,加上static關鍵字,就表示該方法不會被例項繼承,而是直接通過類來呼叫,這就稱為「靜態方法」。
例子1:專案中的應用場景,工廠模式
當我們需要按需獲得需要的建構函式時,我們可以寫乙個js檔案統一管理,在該js檔案中匯入各種建構函式的js,通過該類的方法來返回需要的建構函式.
demo**:
class a
class b
class factory
return types}}
console.log(factory.getfactory())
結果:
class 可以通過extends關鍵字實現繼承,這比 es5 的通過修改原型鏈實現繼承,要清晰和方便很多。
下面是最簡單的例子
例子2 : class繼承基礎
// 父類
class
father
}// 子類,使用extends關鍵字繼承
class
sonextends
father
}
依照例子分析
例子3: this指向
// 父類
class father
}// 子類,使用extends關鍵字繼承
class son extends father
}var son = new son()
console.log(son);
結果:
從結果來看,我們可以知道,this指向son類新建立例項的this,當執行父類father的構造器時,this也不會改變,結果都是掛載在son身上.
ES6 Class 與 ES5 建構函式對比
user類被編譯以後轉化為建構函式。被編譯後生成了 classcallcheck,instanceof方法。class user const user newuser console.log user es6 es5 use strict function instanceof left,right...
ES6 Class語法介紹
參考文章 ecmascript 6 入門 概述 基本上,es6 的class可以看作只是乙個語法糖,它的絕大部分功 能,es5 都可以做到,新的class寫法只是讓物件原型的寫法更加清晰 更像物件導向程式設計的語法而已。舉個栗子 es5 function point x,y point.protot...
簡單理解 es6 class
類即物件 es6 除錯最簡單的方法 直接在node控制台執行js,完全不需要考慮瀏覽器相容性而去安裝babel等編譯器的去編譯後再除錯 先舉個例子 class a start 複製 乙個類就這麼產生了,只要new一下,這個類就可以被用了 let b new a 複製 可能這個類將會有很多地方要使用,...