美文网首页重学es6
class讲解之12 new.target 属性

class讲解之12 new.target 属性

作者: zhang463291046 | 来源:发表于2020-08-13 10:24 被阅读0次

    以下内容是引用或者借鉴别人的,自己只是做个笔记,方便学习。理解错误的地方,欢迎评论。如有侵权,私聊我删除,未经允许,不准作为商业用途

    ES6 为new命令引入了一个new.target属性,该属性一般用在构造函数之中,返回new命令作用于的那个构造函数,如果是通过方法constructor调用new.target会返回undefined

    function Foo(){
      console.log(new.target)
    }
    new Foo();  //Foo
    Foo.call();  //undefined
    

    Class 内部调用new.target,返回当前 Class,当子类继承父类时,new.target会返回子类

    class Rectangle {
      constructor() {
        console.log(new.target);
      }
    }
    
    class Square extends Rectangle {
      
    }
    new Rectangle(); // Rectangle
    new Square(); // Square
    

    相关文章

      网友评论

        本文标题:class讲解之12 new.target 属性

        本文链接:https://www.haomeiwen.com/subject/holorktx.html