共计 621 个字符,预计需要花费 2 分钟才能阅读完成。
Module 模式
var timer = (function(){
let count = 0 // 公有变量
return {add() {count++},
getCount() {return count}
}
})()
timer.add()
console.log(timer.getCount())
长处:因为闭包原理,实现了公有变量
字面量模式
let baseEvent = {el: document.querySelector('#btn'),
init() {this.el.innerHTML = '按钮'}
}
baseEvent.init()
长处:一个字:看起来高级
constructor 模式
function Car(name) {
this.name = name
this.alert = function() {console.log(this.name)
}
}
let car = new Car('audi')
car.alert()
跟“工厂模式”一样,毛病是 alert
每次都得初始化,而且没法继承
优化:
function Car(name) {this.name = name}
Car.prototype.alert = function() {console.log(this.name)
}
let car = new Car('audi')
car.alert() // audi
// 笼罩
car.alert = function() {console.log(this.name + '!!!')
}
car.alert() // audi!!!
正文完