js继承

js继承用的还是比较少的,一般通过原型链继承或混合继承目的就是降低创建对象的开销!

各种继承示例如下:

构造函数继承:


<script>
    //把父类方法放到其原型链中而非类声明体中,以便每次实例化子类时不至于都执行函数而增加创建对象的开销
    Person.prototype.speakP=function(){
        console.log("Im a Person!");
    };
    function Person(age,name) {
        this.age = age;
        this.name=name;
    }
    function Student(sno,age,name) {
        Person.call(this,age,name);
        this.sno = sno;
    }
    var s = new Student(95001,23,"小红");
    console.log(Student.prototype.constructor);
    //s.speakP(); //s不是Person类型,所以不能调用speakP函数;如果非要调用,可使用以下方案二:原型链继承
</script>

原型链继承:


<script>
  Person.prototype.speakP=function(){
        console.log("Im a Person! age="+this.age+" name="+this.name);//通过实例化的子类对象调用我时获取不到父类的age、name
    };
    function Person(age,name) {
        this.age = age;
        this.name=name;
    }
    Student.prototype = new Person();
    //因为修改了Student原型链,需要把其原型链上构造器重新指向自己
    Student.prototype.constructor = Student;
    function Student(sno,age,name) {
        this.sno = sno;
    }
    var s = new Student(95001,23,"小红");
    console.log(Student.prototype.constructor);
    s.speakP();
</script>

混合继承:


<script>
    Person.prototype.speakP=function(){
        console.log("Im a Person! age="+this.age+" name="+this.name);
    };
    function Person(age,name) {
        this.age = age;
        this.name=name;
    }
    Student.prototype = new Person();
    Student.prototype.constructor = Student;
    function Student(sno,age,name) {
        Person.call(this,age,name);
        this.sno = sno;
    }
    var s = new Student(95001,23,"小红");
    console.log(Student.prototype.constructor);
    s.speakP();
</script>

ES6 extends继承:


<script>
   class Person {
       constructor(age, name) {
           this.age = age;
           this.name = name;
       }
       sayHi(){
           console.log("Im a Person! age="+this.age+" name="+this.name);
       }
   }
   class Student extends Person{
       constructor(sno,age,name) {
           super(age, name);
           this.sno = sno;
       }
   }
   var s = new Student(95001,24,"小红");
   console.log(Student.prototype.constructor);
   s.sayHi();
</script>
喜欢阅读
  • 名门丑妻深深宠

    名门丑妻深深宠

    程萍落曾经是整个海城的笑话,出身名门却又胖又丑,婚礼上被新郎放了鸽子。还跳楼逼婚摔断了腿……惨兮兮的活了两世,她带着末世的空间重回婚礼现场。新郎放鸽子?很好,自带嫁妆现场征婚!结果征到一只深不可测的老狼狗!突然觉得肾很疼肿么回事?“封少,有个女明星嘲笑夫人长得胖!”“让她永远在演艺圈消失。”“封少,夫人在卖减肥药!”“给她注册商标成立上市公司全球推广。”“封少,夫,夫人说要包养小鲜肉……”某男闻言,暴怒拿起手机百度————三十五岁的老大叔如何成为小鲜肉?求答案,很急,在线等!

  • 随风逍遥

    随风逍遥

    果喵乃是上古妖物之一,此前为了捉拿在人间祸乱的猫妖,天帝不知派下多少天兵天将下界捕捉,甚至最后不得已请动了二郎神君才将那妖物捉拿归案,若论这道行,果喵虽然身为仙君,可本事却是断断比不上那九命猫妖的。幻化到人间,受尽世间爱恨悲痛!这是一本纯情虐心的小说,里面缠绵悱恻的爱恋却已悲剧结局,探世间爱为何为,说不清道不明!

  • 战天绝雄

    战天绝雄

    京都中心医院特病科,名义为特病处理,实际是无法治愈之病患的最后收容所。秦昊作为主治医师,专业黑锅人士,难道前程尽留于此?异石突变,天书偶得,来自三国的传承之力——曹操的绝世功法,以及华佗的神医之术。从此潜心研究绝世功夫《枭雄诀》,以及起死回生,去病延年的超凡妙法!有病?治!死亡医生摇身一变,成为绝世狂医!千金小姐,娇俏护士,美女病人闻名纷沓而至......劫匪?杀!菜鸟凡人表京都中心医院特病科,名义为特病处理,实际是无法治愈之病患的最后收容所。秦昊作为主治医师,专业黑锅人士,难道前程尽留于此?异石突变,天书偶得,来

  • 爱似深海,情不愿醒

    爱似深海,情不愿醒

    “一夜之间,她失去父母,失去一切,从高高在上的千金沦为他的囚奴。她爱他,愿意为他付出所有。可是到头来才发现,她对他的爱,成了世间最锋利的刀。他用这把刀,把她的心一片一片地剜下……他是她最爱的人,也是亲手将她推入地狱的人!”

  • 一诺惊婚

    一诺惊婚

    她本是富贵的千金小姐,却在醒来之时,成为了一个陌生的女人。身份,面容,都被另一个女人代替。亲情,爱情,都被另一个女人占据。究竟是谁?夺走了她的一切?

  • 特级护花天卫

    特级护花天卫

    叶凯原为纨绔大少,后被人迫害,流落海外,失去记忆。五年时间,意外之下,叶凯从一个纨绔废物成为绝世兵王。为了找寻自己,他根据线索回归都市。

  • 愿为相思树长情

    愿为相思树长情

    “我愿做一棵树,高兴的时候开花,不高兴的时候落叶。我愿化做一朵云,飘进你五彩缤纷的梦中!”可有谁还会记得这句话?我叫时梦雯,是一名正宗的八零后。时是时间的时,梦是梦幻的梦,彩色云朵则是雯的意思。小时候有些文化的人看了都会觉得我的名字很梦幻,很好听。可是谁又知道,我这前半生真真是印证了这个名字,活在了不切实际的梦幻当中!我喜欢一切梦幻浪漫的东西,例如紫色,例如琼瑶,例如雨中漫步。我向往一切与美好有关的东西,真诚的友情,浓浓的亲情,还有甜蜜的爱情。可是,越大越发现,我想要的东西,都是我此生遥不可及之物!而那些曾经不以为然的,却是在我身边时刻守护着我,八零后的我才开始真正懂得,珍惜二字!

  • 镇狱神帝

    镇狱神帝

    十万大山,妖族盘踞;北荒巨漠,蛮荒肆掠。废物叶云无意中激活了父亲留给他的一块玉佩,得到一门炼体功法《神魔镇狱诀》以及浩瀚无比的药方丹方。从此,天骄再现,以力证道,走上了炼体一道,碾压一切,横推万古!

  • 猜你喜欢
  • js继承方法
  • js原型链继承
  • js继承方式
  • js继承的几种方式
  • js类继承
  • js原型继承
  • js实现继承
  • js中的继承
  • js如何实现继承
  • vue生命周期
  • js嵌入sql
  • js里面的继承
  • js
  • 闭包
  • js自学网
  • 热门推荐
  • boosting cream怎么用
  • 泗泾站未来有2条地铁
  • stir things up
  • 拉菲彩票平台开了多久
  • 2017国考笔试时间安排
  • 寿光台头农业银行电话
  • www.hx518frp.com
  • 春熙路哪家商场有kate
  • 计算机缺失mfc71.dll
  • 小受含道具出门的片段
  • ez547365625cn
  • golang iris echo
  • asp.net stateserver
  • beao sanitary wares
  • 喜马拉雅听书费流量么
  • 血族第四季在线观看13
  • 西游记 动画片 高清版
  • 梅西高清手机壁纸2017
  • take your course
  • 饥荒远古铃铛使用技巧
  • All Right Reserved 爱说篇