原型模式(Prototype Pattern)
1 2 3 |
定义:用于创建重复的对象,同时又能保证性能。 目的:用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 场景:在运行期建立和删除原型。 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
let productPrototype = { init: (type) => { this.type = type }, getType: () => { return this.type } } let prototype = (type) => { function F () { } F.prototype = productPrototype let f = new F() f.init(type) return f } let car = prototype('丰田CHR') console.log(car.getType()) |
Github地址:https://github.com/skillnull/Design-Mode-Example[……]