zoukankan      html  css  js  c++  java
  • JavaScript创建对象的七种方法

    一、 工厂模式

    创建:

    function createPerson(name,behavior){
    var p=new Object();
    p.name=name;
    p.behavior=behavior;
    p.getInfo=function(){
    alert(this.name+"在"+this.behavior)
    }    
    p.getInfo();
    }
    var person=createPerson("张三",["打游戏","看书"]);

    二、 构造函数模式

    创建:

    function createPerson(name,behavior){
    this.name=name;
    this.behavior=behavior;
    this.getInfo=function(){
    alert(this.name+"在"+this.behavior)
    }
    }
    var person=new createPerson("张三",["打游戏","看书"]);
    person.getInfo();


    三、原型模式

    创建:

    function createPerson(){}
    createPerson.prototype.name="张三";
    createPerson.prototype.behavior=["打游戏","看书"];
    createPerson.prototype.getInfo=function(){
    alert(this.name+"在"+this.behavior)
    }
    var person=new createPerson();
    person.getInfo();

    四、组合模式(构造函数与原型)

    创建:

    function createPerson(name,behavior){
    this.name=name;
    this.behavior=behavior;
    }
    createPerson.prototype.getInfo=function(){
    alert(this.name+"在"+this.behavior)
    }
    var person=new createPerson("张三",["打游戏","看书"]);
    person.getInfo();

    五、动态原型模式

    创建:

    function createPerson(name,behavior){
    this.name=name;
    this.behavior=behavior;
    if(typeof this.getInfo!="function"){
    createPerson.prototype.getInfo=function(){
    alert(this.name+"在"+this.behavior);
    }    
    }
    }
    var person=new createPerson("张三",["打游戏","看书"]);
    person.getInfo();

    六、寄生构造函数模式

    创建:

    function createPerson(name,behavior){
    var p={};
    p.name=name;
    p.behavior=behavior;
    p.getInfo=function(){
    alert(this.name+"在"+this.behavior)
    }    
    p.getInfo(); 
    }
    var person=new createPerson("张三",["打游戏","看书"]);

    七、稳妥构造函数模式

    创建:

    function createPerson(name,behavior){
    var p={};
    p.getInfo=function(){
    alert(name+"在"+behavior)
    }    
    p.getInfo(); 
    }
    
    var person=new createPerson("张三",["打游戏","看书"]);
    
     

    参考网址:http://www.cnblogs.com/ifat3/p/7429064.html

  • 相关阅读:
    腾讯云COS对象存储的简单使用
    SpringSecurity的简单使用
    AngularJS入门 & 分页 & CRUD示例
    使用 Java 发送邮件
    Java操作pdf: JarsperReport的简单使用
    获取Spring容器中的Bean协助调试
    JMS--ActiveMQ的简单使用
    Echarts和Quartz简介
    WebService
    Java使用 POI 操作Excel
  • 原文地址:https://www.cnblogs.com/jian138/p/8531152.html
Copyright © 2011-2022 走看看