Appearance
原型设计模式 / Prototype
原型设计模式专注于通过克隆或者继承已经存在的对象作为原型来创建对象。在这个设计模式中,对象充当创建新对象的原型,允许在多个对象之间启用继承和共享属性与方法。
Code
javascript
const doorPrototype = {
// property
color: 'red',
// method
open() {
console.log('open');
},
printColor() {
console.log(this.color);
},
};
const door1 = Object.create(doorPrototype);
// 遮蔽继承而来的属性
door1.color = 'blue';
// 使用继承而来的方法打印 color 属性
door1.printColor(); // blue
const door2 = Object.create(doorPrototype);
// 使用继承而来的方法打印继承而来的属性
door2.printColor(); // red
// 调用继承而来的方法
door2.open(); // open