• 面向对象之工厂模式和构造函数模式


    工厂模式:用函数来封装,以特定接口来创建对象的细节。

    创建的对象是Object类型
    function person(name, age , job){
        var o  =new Object() ;
        o.name = name;
        o.age = age ;
        o.job = job ;
        o.sayName = function(){
            alert(this.name);
        };
        return o ;
    
    
    
    var person1 = new person("cancan",21,"student");
    var person2 = new person("xiaoma",45,"teacher");

       console.log(person1 instanceof person); // false
       console.log(person1 instanceof Object);//true
       console.log(person instanceof person); //true



    构造函数模式:构造函数可以创建特定类型的对象,自定义对象的属性和方法

    function person(name,age,job){
        this.name = name ;
        this.age = age ;
        this.job = job ;
        this.sayName = function(){
            alert(this.name);
        };
    
    }
    
    var person1 = new person("cancan",21,"student");
    var person2 =new person("xiaoma",45,"teacher");

      console.log(person1 instanceof person); // true
      console.log(person instanceof Object); // true

    构造函数与工厂函数之间不同:
    1.工厂函数针对的都是Object的对象模型,而构造函数可以匹配自定义的对象模型(如上例)
    2.工厂函数创建对象,以及要有有返回值,构造函数不需要,但他们均继承于Object
     
     
  • 相关阅读:
    2017-10-11seowhy记录
    2017.8.23创业项目方向
    西安项目分析
    创业方法
    做seowhy官网需要三个人
    2017.8.2 高级长尾编辑技巧
    Golang 任务队列策略 -- 读《JOB QUEUES IN GO》
    Go 到底有没有引用传参(对比 C++ )
    使用xorm工具,根据数据库自动生成 go 代码
    golang的Channel
  • 原文地址:https://www.cnblogs.com/cty97/p/6785441.html
Copyright © 2020-2023  润新知