zoukankan      html  css  js  c++  java
  • JavaScript 寄生构造函数和动态原型模式

    动态原型模式 ! 它区别于组合使用构造函数和原型模式。  将所有的信息都封装在了构造函数中,这样看起来更具有封装性,可能让更多别的OO语言开发者理解。

    既然是都封装在构造函数中,如代码

     function Person(name,age,job){
                  //实例属性
                       this.name=name;
                       this.age=age;
                       this.job=job;
                       //判断是否存在这个方法,不存在则自动添加到原型中,只被初始化一次,只会在初次调用构造器时,才会执行。
                      if(typeof this.sayName!="function"){
                       alert("ok");//测试  是否创建多个对象实例时,原型只被初始化一次
                        Person.prototype.sayName=function(){
                           alert(this.name);
                        }
                      }
                  
                  }
    
                 var person1 = new Person("Nicholas", 29, "Software Engineer");
                 var person2 = new Person("Greg", 27, "Doctor");
                 person1.sayName();
                 person2.sayName();
  • 相关阅读:
    yii2框架随笔27
    yii2框架随笔26
    yii2框架随笔25
    yii2框架随笔24
    yii2框架随笔23
    yii2框架随笔21
    yii2框架随笔20
    yii2框架随笔19
    yii2源码学习笔记(十五)
    yii2源码学习笔记(十四)
  • 原文地址:https://www.cnblogs.com/sunjiqiang/p/5633406.html
Copyright © 2011-2022 走看看