1class Dog { 2 constructor(name) { 3 this.name = name; 4 } 5}; 6 7class Labrador extends Dog { 8 // 1 9 constructor(name, size) { 10 this.size = size; 11 } 12 // 2 13 constructor(name, size) { 14 super(name); 15 this.size = size; 16 } 17 // 3 18 constructor(size) { 19 super(name); 20 this.size = size; 21 } 22 // 4 23 constructor(name, size) { 24 this.name = name; 25 this.size = size; 26 } 27 28};
本题为"单选题"
参考答案:
正确选项:B:2
在子类中,在调用super之前不能访问到this关键字。 如果这样做,它将抛出一个ReferenceError:1和4将引发一个引用错误。
使用super关键字,需要用给定的参数来调用父类的构造函数。 父类的构造函数接收name参数,因此我们需要将name传递给super。
Labrador类接收两个参数,name参数是由于它继承了Dog,size作为Labrador类的额外属性,它们都需要传递给Labrador的构造函数,因此使用构造函数2正确完成。
最近更新时间:2024-08-03

题库维护不易,您的支持就是我们最大的动力!