码迷,mamicode.com
首页 > 其他好文 > 详细

对象冒充继承和原生链实现继承的方法和问题

时间:2018-12-20 16:54:22      阅读:197      评论:0      收藏:0      [点我收藏+]

标签:man   传参   hang   call   prototype   this   cal   his   继承构造函数   

function People(){

  this.name=‘zhangsan‘;

  this.age = 20;

  this.run = fcuntion(){

   alert(this.name+‘在运动‘);

  }  

}

//原生链

People.prototype.sex = ‘男‘;

People.prototype.work = function(){

  alert(this.name+‘在工作‘);

}

//1.对象冒充实现继承:只能继承构造函数里的 不能继承原生链

function Person(){

  People.call(this);//对象冒充实现继承 只能继承构造函数里的 不能继承原生链

}

var a = new Person();

a.run();//可以实现

a.work();//不可以实现

//2.原生链实现继承:可以继承构造函数里的内容,也可以继续原生链里的内容

function Human(){

}

Human.prototype=new People();

var b = new Human();

b.run();//可以实现

b.work();//可以实现


问题:无法传参

var c = new Human(‘lisi‘,20);

会提示undefind在运动

 

对象冒充继承和原生链实现继承的方法和问题

标签:man   传参   hang   call   prototype   this   cal   his   继承构造函数   

原文地址:https://www.cnblogs.com/yifengs/p/10149928.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!