javascript创建对象之函数构造模式和原型模式结合使用(四)
创建自定义类型的常见方式就是组合使用构造函数模式与原型模式一起使用.
构造函数模式用于定义实例对象的特有的部分(属性和方法),原型模式用于定义共享的部分.
这样最大限度的节省了内存的开销.
1 function Human(name, sex) { 2 this.name = name; 3 this.sex = sex; 4 this.getWife=function(){//娶老婆 5 if (this.sex == "男") { 6 return "我要娶老婆"; 7 } 8 else 9 return "我不用娶老婆"; 10 } 11 } 12 Human.prototype.say = function () { 13 alert(this.name); 14 } 15 var man = new Human("吕布", "男"); 16 var woman = new Human("貂蝉", "女"); 17 alert(man.getWife());//我要娶老婆 18 alert(woman.getWife());//我不用娶老婆 19 alert(man.getWife == woman.getWife);//false 20 alert(man.say==woman.say);//true
这种组合模式发挥了函数构造模式和原型模式各自的长处.解决了各自的缺点.这种组合模式是目前最广范,最普遍的一种创建自定义类型的方法.
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。