这是我的任务
我尝试在此处添加创建新功能,但它不起作用。不确定我是否正确创建了该函数。有谁帮忙看看吗
class Parent {
abilities = []
constructor(){
this.abilities.push("Parenting");
this.abilities.push("Role modeling");
}
showAbilities(){
console.log("These are the abilities:")
for(const a of this.abilities){
console.log(a);
}
}
}
const p = new Parent();
p.showAbilities(); // Observe that this function prints "Parenting" and "Role modeling".
// Task 1: Add code here
class Child extends Parent {
addNewAbility = []
super() {
this.addNewAbility.push("Parenting");
}
}
const c = new Child();
c.addNewAbility("Dancing");
c.showAbilities(); // This function should print "Parenting", "Role modeling" and "Dancing".
您需要在子类的构造函数中调用
super
:
class Child extends Parent {
addNewAbility = []
constructor() {
super()
this.addNewAbility.push("Parenting")
}
当您在构造函数中调用
super
时,它会从子类中调用父类的构造函数。
这里有一个链接,很好地解释了
super
的工作原理。