javascript创建对象之动态原型模式(五)

动态原型模式是将所有的信息都封装到工造函数中,而构造函数中初始化原型,有保持了同时在使用构造函数和原型的优点.

1  function Human(name, sex) {
2             this.name = name;
3             this.sex = sex;
4             if (typeof this.say != "function") {
5                 Human.prototype.say = function () {
6                     alert(this.name);
7                 }
8             }
9         }

      var man =new Human ("凯撒", "男");
      man.say();//凯撒

构造函数中,只用say不存在的情况下,才会将它添加到原型中.这段代码只有在初次调用时才会执行.

原文地址:https://www.cnblogs.com/guoyansi19900907/p/3593217.html