美文网首页
常用的初始化实例对象的模式

常用的初始化实例对象的模式

作者: ChrisWF | 来源:发表于2017-10-12 17:21 被阅读5次

1. 工厂模式

function makeObj(name, age, job) {

var o = new Object();

o.name = name;

o.age = age;

o.job = job;

o.sayAge = function() {

alert(this.age);

};

return o;

}

var a = makeObj("wst", "22", "web")

优点: 能快速的构建大量实例。

缺点: 不能解决对象识别的问题。

2. 构造函数模式

function Person(name, age, job) {

this.name = name;

this.age = age;

this.job = job;

this.sayAge = function() {

alert(this.age);

};

}

var a = new Preson("wst", "22", "web")

优点: 能快速构建大量, 可以将其实例标识为一种特定类型

缺点: 每个方法都要在每个实例上重新创建一遍

3. 原型模式

function Person() {

}

Person.prototype.name = 'wst';

Person.prototype.age = '22';

Person.prototype.job = 'web';

Person.prototype.sayAge = function() {

alert(this.age);

};

var a = new Preson("wst", "22", "web")

简写

function Person() {}

Person.prototype = {

constructer: Person,

name: "wst",

age: '22',

job: 'web'

};

优点:避免了相同方法的重复构建

缺点:因为其共享的本质,影响到实例拥有自己的全部属性

4.混合模式

function Person(name,age,job){

this.name = name;

this.age = age;

this.job = job;

this.frisds = ['zkw','lyf'];

}

Person.prototype = {

constructor:Person,

sayName:function (){

alert(this.name);

}

};

var a = new Preson("wst", "22", "web")

使用最广泛,认同度最高,定义引用类型的一种默认模式

相关文章

  • 常用的初始化实例对象的模式

    1. 工厂模式 function makeObj(name, age, job) { var o = new Ob...

  • 工厂模式 iOS

    什么是工厂模式工厂模式是我们最常用的实例化对象模式了,根据已知条件或者参数,实例化你需要的对象。 工厂模式分为三种...

  • Android设计模式——工厂模式

    一、工厂模式使我们是我们最常用的实例化对象模式,是用工厂方式代替new操作的一种模式。 通常我们创建类的实例对象的...

  • java工厂模式

    1、工厂模式的定义 工厂模式是我们最常用的实例化对象模式,是用工厂方法代替new操作的一种模式。工厂模式抽象了对象...

  • python------new方法及其他

    一、单例模式new与init的区别:__new:创建实例对象时调用的构造方法init:初始化方法,用于设置实例的相...

  • 单例

    一、单例模式new与init的区别:__new:创建实例对象时调用的构造方法init:初始化方法,用于设置实例的相...

  • 【设计模式】之对象池模式--JDBC连接池实现案例

    对象池设计模式 对象池设计模式的目标 对象池可以显著提高性能,在那些初始化一个类实例的代价比较高、但是使用频率比较...

  • 编程中的设计模式之原型模式

    介绍 原型模式用来创建重复的对象,减少对象创建初始化的性能开销,属于创建型模式。 处理文件实例 模拟一个需求,文件...

  • 设计模式(二)——工厂模式

    简单工厂模式又叫做静态工厂方法模式,是常用的实例化对象模式。 抽象产品类:工厂类所创建对象的父类 具体产品类:工厂...

  • 创建对象的几种方式

    字面量式(最常用) 调用系统的Object构造函数,创建实例对象 工厂模式 构造函数模式 与工厂模式的区别: 没有...

网友评论

      本文标题:常用的初始化实例对象的模式

      本文链接:https://www.haomeiwen.com/subject/vteoyxtx.html