总结js面向对象调用的几种模式
Posted gehj
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了总结js面向对象调用的几种模式相关的知识,希望对你有一定的参考价值。
一、工厂模式:类似于function func(A,B){ var obj=new Object(); obj.A=A; obj.B=B; return obj;}; var obts=func(‘name‘,‘ages‘);
二、构造函数模式:可用于构造特定类型的对象 function createObj(A,B){ this.A=A; this.B=B; this.func=function() {alert(this.B); } } var obts=new createObj(‘name‘, ‘ages‘);使用new来创建对象,函数中不需要return;这种模式对于需要创建多个对象的情况下需要多次调用相同的函数;
三、原型模式:创建的每个对象都有prototype属性,该属性是一个指针,指向一个对象,作用是包含所有实例对象的属性和方法,实例对象属性和方法共享类似于继承;
function func(A,B){ func.prototype.A=A; func.prototype.B=B; func.prototype.create=function(){ alert(1);} } var func1=new func(); 所有原型对象共用导致其中一个实例修改属性,其他的实例也会跟着修改;
四、混合模式(原型+构造):function func(A,B){ this.A=A; this.B=B} func.prototype.create=function(){alert(1);};这样可以实现每个实例对象都有自己的属性,而方法则实现了共用;
以上是关于总结js面向对象调用的几种模式的主要内容,如果未能解决你的问题,请参考以下文章