JS 设计模式一 -- 原型模式
原型模式
概念:
原型模式 是指原型实例指向创建对象的种类,并通过拷贝这些原型创建新的对象,是一种用来创建对象的模式,也就是创建一个对象作为另一个对象的prototype属性。
实现原型模式:
方法一:使用 Object.create(prototype, optionalDescriptorObjects)
var vehiclePrototype = { model:"保时捷", getModel: function () { console.log('车辆模具是:' + this.model); } }; var vehicle = Object.create(vehiclePrototype,{ "model":{ value:"法拉利" } }); vehicle.getModel();
方法二:使用 prototype
var vehiclePrototype = { init: function (carModel) { this.model = carModel || "保时捷"; }, getModel: function () { console.log('车辆模具是:' + this.model); } }; function vehicle(model) { function F() { }; F.prototype = vehiclePrototype; var f = new F(); f.init(model);
return f; } var car = vehicle('法拉利'); car.getModel();
总结:
原型模式,就是创建一个共享的原型,通过拷贝这个原型来创建新的类,用于创建重复的对象,带来性能上的提升。