JavaScript中常见的设计模式(3)原型模式
2017-04-26 20:57
225 查看
原型模式
在上一章节中已经说过原型模式解决了构造模式和工厂模式的不足之处。
function Person(){}
Person.prototype.name ="yuan xing";
Person.prototype.age=23;
Person.prototype.job="Software engineer";
Person.prototype.displayInfo=function(){
alert(this.name+","+this.age+","+this.job+",");
}
var person=new Person()
从上述的栗子中可以看出,原型模式不会有构造函数定义多个全局函数的问题,也不会有工厂模式不能确定对象实例类型的问题。
但是从上述栗子中可以看出原型模式不能传入参数这是原型模式
优点:语义上,看起来所有属性都是同一个对象,解决了构造函数和工厂模式的问题;
缺点:不能通过给构造函数传递参数来初始化属性的值,而且如果其中某个实例属性重新赋值,会导致其他的实例同一属性也会发生变化
在上一章节中已经说过原型模式解决了构造模式和工厂模式的不足之处。
function Person(){}
Person.prototype.name ="yuan xing";
Person.prototype.age=23;
Person.prototype.job="Software engineer";
Person.prototype.displayInfo=function(){
alert(this.name+","+this.age+","+this.job+",");
}
var person=new Person()
从上述的栗子中可以看出,原型模式不会有构造函数定义多个全局函数的问题,也不会有工厂模式不能确定对象实例类型的问题。
但是从上述栗子中可以看出原型模式不能传入参数这是原型模式
优点:语义上,看起来所有属性都是同一个对象,解决了构造函数和工厂模式的问题;
缺点:不能通过给构造函数传递参数来初始化属性的值,而且如果其中某个实例属性重新赋值,会导致其他的实例同一属性也会发生变化
相关文章推荐
- javascript 设计模式一:原型模式
- 深入理解JavaScript系列(42):设计模式之原型模式
- 深入理解JavaScript系列(42):设计模式之原型模式
- JavaScript中常见的设计模式(2)构造函数模式
- JavaScript之常见设计模式(1)(面向对象的程序设计)
- 常见设计模式解析和实现(C++)Prototype模式(原型模式)
- javascript常见的设计模式
- javascript简单工厂设计模式////javascript构造函数//////prototype原型介绍
- 深入理解JavaScript系列(42):设计模式之原型模式
- JavaScript中常见的设计模式(1)工厂模式
- 深入理解JavaScript系列(42):设计模式之原型模式
- 深入理解JavaScript系列(42):设计模式之原型模式详解
- 常见设计模式解析和实现(C++)Prototype模式(原型模式)
- 深入理解JavaScript系列(42):设计模式之原型模式
- 深入理解JavaScript系列(42):设计模式之原型模式
- Javascript继承机制的设计思想(原型链模式)
- [设计模式] JavaScript 之 原型模式 : Object.create 与 prototype
- 深入理解JavaScript系列(42):设计模式之原型模式
- JavaScript之常见设计模式(2)(面向对象的程序设计)
- JavaScript 设计模式 - 原型模式