资讯专栏INFORMATION COLUMN

面试必问之继承

cartoon / 1425人阅读

摘要:继承常用的三种方法,记录一下,马上要面试了。觉得有用可以帮我点个赞吗谢谢了。

js继承常用的三种方法,记录一下,马上要面试了。

觉得有用可以帮我点个赞吗?谢谢了。

    // 原型链继承
    function Parent() {
      this.name = "原型链继承";
      this.play = [1,2,3];
    }
    Parent.prototype.getName = function () {
      console.log(this.name);
    }

    function Child() {
      this.type = "原型链继承child";
    }
    Child.prototype = new Parent();
    // 原型链上的原型对象是通用的,改变一个,其他的都会改变,但我们不想所有对象都改变
    var child1 = new Child();
    var child2 = new Child();
    child1.play.push(4)
    console.log(child1.play)
    console.log(child2.play)
    // 构造函数继承
    function Parent() {
      this.name = "构造函数继承";
      this.play = [1,2,3];
    }
    Parent.prototype.getName = function () {
      console.log(this.name);
    }

    function Child() {
      Parent.call(this)
      this.type = "构造函数继承child";
    }

    var child1 = new Child();
    console.log(child1.getName)
    //构造函数继承不会继承原型链上的方法
    // 组合继承
    // 原理:创建中间对象,中间对象的原型对象是父类的
    function Parent() {
      this.name = "组合继承";
      this.play = [1,2,3];
    }
    Parent.prototype.getName = function () {
      console.log(this.name);
    }

    function Child() {
      Parent.call(this)
      this.type = "组合继承child";
    }
    Child.prototype = Object.create(Parent.prototype);
    Child.prototype.constructor = Child;
    //没有这句代码,Child.prototype.constructor会指向Parent
    var child = new Child()
    console.log(child instanceof Child,child instanceof Parent);
    console.log(child.constructor);

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/101554.html

相关文章

  • EventBus框架库代码走读,带你全面理解View的绘制流程

    摘要:如果当前不是主线程则直接调用,如果是线程则创建一个加入到后台的一个队列,最终由中的一个线程池去调用。抛出线程状态非法异常。 while (clazz != null) {String name = clazz.getName();if (name.startsWith(java.) || name.starts...

    番茄西红柿 评论0 收藏2637
  • 2019-我的前端面试

    摘要:先说下我面试情况,我一共面试了家公司。篇在我面试的众多公司里,只有同城的面问到相关问题,其他公司压根没问。我自己回答的是自己开发组件面临的问题。完全不用担心对方到时候打电话核对的问题。 2019的5月9号,离发工资还有1天的时候,我的领导亲切把我叫到办公室跟我说:阿郭,我们公司要倒闭了,钱是没有的啦,为了不耽误你,你赶紧出去找工作吧。听到这话,我虎躯一震,这已经是第2个月没工资了。 公...

    iKcamp 评论0 收藏0
  • 这几道Java集合框架面试题在面试中几乎必问

    摘要:若遇到哈希冲突,则将冲突的值加到链表中即可。之后相比于之前的版本,之后在解决哈希冲突时有了较大的变化,当链表长度大于阈值默认为时,将链表转化为红黑树,以减少搜索时间。有序,唯一红黑树自平衡的排序二叉树。 本文是最最最常见Java面试题总结系列第三周的文章。主要内容: Arraylist 与 LinkedList 异同 ArrayList 与 Vector 区别 HashMap的底层...

    bigdevil_s 评论0 收藏0
  • 2019前端秋季社招面试经历总结(三年经验)

    摘要:经历月份开放的简历,收到了蛮多询问和面试,算是招人旺季,需要跳槽的小伙伴抓住机会。现在是面试了家公司左右,有些高频问题会标记次数总次数,可供大家参考。最后祝大家面试顺利,拿到心仪的,写错的地方请不吝赐教,谢谢。 经历 7月份开放的简历,收到了蛮多询问和面试,算是招人旺季,需要跳槽的小伙伴抓住机会。一开始广泛看面试题,没抓住重点复习,有很多平时也没怎么用到,导致一开始面试的时候,问的问题...

    Kross 评论0 收藏0
  • 2019前端秋季社招面试经历总结(三年经验)

    摘要:经历月份开放的简历,收到了蛮多询问和面试,算是招人旺季,需要跳槽的小伙伴抓住机会。现在是面试了家公司左右,有些高频问题会标记次数总次数,可供大家参考。最后祝大家面试顺利,拿到心仪的,写错的地方请不吝赐教,谢谢。 经历 7月份开放的简历,收到了蛮多询问和面试,算是招人旺季,需要跳槽的小伙伴抓住机会。一开始广泛看面试题,没抓住重点复习,有很多平时也没怎么用到,导致一开始面试的时候,问的问题...

    DevWiki 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<