简单的JS多重继承示例_Javascript教程-查字典教程网
简单的JS多重继承示例
简单的JS多重继承示例
发布时间:2016-12-30 来源:查字典编辑
摘要:复制代码代码如下:$defined=function(v){returnv!=undefined;}Class=function(){var...

复制代码 代码如下:

$defined=function(v){

returnv!=undefined;

}

Class=function(){

varbase={};

for(vark=0;k<arguments.length;k++){

//{{newarguments[k]()withcustomconstructorfield.

varo=arguments[k].prototype;

o.constructor=arguments[k];

arguments[k].call(o);

//}}

for(keyino)base[key]=o[key];

}

functionKlass(){

//foreveryclassoneobjectcache.

varclso=null;

functionklass(){

if(arguments.length<=0&&clso!=null){

//hitcache.

returnclso;

}

if($defined(this.constructor.init)){

//useinit()forclassinitialization.

this.constructor.init.apply(this,arguments);

}

clso=this;

}

klass.prototype=base;

returnklass;

}

returnKlass();

}

A=newClass();

A.init=function(){

this.x=400;

this.y=300;

}

B=newClass(A);

B.init=function(){

this.y=200;

this.z=100;

}

C=newClass(B);

C.init=function(){

this.z=0;

}

c=newC();

alert(c.x);

alert(c.y);

alert(c.z);

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新Javascript教程学习
    热门Javascript教程学习
    编程开发子分类