js调用父类方法
在JavaScript中,可以使用两种方法调用父类的方法:通过`super`关键字和通过`PrototypeOf(`函数。
1. 使用`super`关键字调用父类方法:
在ES6中,可以使用`super`关键字来调用父类的方法。在子类的构造函数中使用`super(`调用父类的构造函数。在子类的其他方法中,可以使用`super.方法名(`来调用父类的方法。
```javascript
class Parent
constructor(name)
this.name = name;
}
sayHell
console.log('Hello, ' + this.name);
}
}
class Child extends Parent
constructor(name, age)
super(name); // 调用父类的构造函数
this.age = age;
}
js原型和原型链的理解sayHell
super.sayHello(; // 调用父类的方法
console.log('I am ' + this.age + ' years old.');
}
}
let child = new Child('Alice', 10);
child.sayHello(; // 输出:Hello, Alice  I am 10 years old.
```
在上面的例子中,`Child`类继承自`Parent`类。在`Child`的构造函数中,使用`super(name)`调用父类`Parent`的构造函数。在`Child`的`sayHello`方法中,使用`super.sayHello(`调用父类`Parent`的`sayHello`方法。
2. 使用`PrototypeOf(`函数调用父类方法:
在ES5及更早的版本中,可以使用`PrototypeOf(`函数来获取对象的原型(即父类对象),然后通过原型链调用父类的方法。
```javascript
function Parent(name)
this.name = name;
}
Parent.prototype.sayHello = functio
console.log('Hello, ' + this.name);
}
function Child(name, age)
Parent.call(this, name); // 调用父类的构造函数
this.age = age;
}
Child.prototype = ate(Parent.prototype); // 设置原型链
structor = Child;
Child.prototype.sayHello = functio
PrototypeOf(Child.prototype).sayHello.call(this); // 调用父类的方法
console.log('I am ' + this.age + ' years old.');
}
let child = new Child('Alice', 10);
child.sayHello(; // 输出:Hello, Alice  I am 10 years old.
```
在上面的例子中,`Child`函数继承自`Parent`函数。在`Child`的构造函数中,使用`Parent.call(this, name)`调用父类`Parent`的构造函数。然后通过`ate(Parent.proto
type)`将`Parent`的原型赋值给`Child`的原型,实现继承关系。在`Child`的`sayHello`方法中,使用`PrototypeOf(Child.prototype).sayHello.call(this)`调用父类`Parent`的`sayHello`方法。
综上所述,可以通过`super`关键字或`PrototypeOf(`函数来调用父类的方法,从而实现在JavaScript中调用父类方法的功能。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。