common js 方式的導(dǎo)出模塊嚣州,沒有實(shí)例化的概念,基于模塊也是基于對(duì)象泡徙,傳不同的參數(shù)來變化
立即執(zhí)行模式
var xxx = function () {
}()
相當(dāng)于直接實(shí)例化一個(gè)對(duì)象,再將對(duì)象膜蠢,以模塊的方式來使用
原型模式
原型繼承方式的類锋勺,需要實(shí)例化再使用蚀瘸,
var xxx= function () {
this.ctx = null;
};
xxx.prototype.render = function () {
};
相當(dāng)于定義一個(gè)類,需要
let objA = new xxx()
objA.render()
或者模塊導(dǎo)出時(shí)庶橱,可以直接實(shí)例化一個(gè)對(duì)象來導(dǎo)出贮勃,相當(dāng)于模塊導(dǎo)出
es6 類方式,實(shí)例化對(duì)象導(dǎo)出苏章,可 new 可直接調(diào)用
export class xxx {
constructor() {
this.ctx = null
}
render() {
}
}
// 導(dǎo)出靜態(tài)屬性
xxx.renderType = { lines: 'lines', points: 'points' }
// 創(chuàng)建一個(gè)實(shí)例并賦值對(duì)象方法到類方法寂嘉,相當(dāng)于靜態(tài)函數(shù)
let object= new xxx()
xxx.render = object.render.bind(object)