我正在编写下面的代码,我无法理解它是如何工作的。在 C# 或 Java 中,当我们使用 base 或 super 关键字时,它会返回值,但在打字稿中,我得到“未定义”。如果我使用“this”而不是“super”,它就可以工作。
class Person {
public firstName: string;
public lastName: string;
constructor(fn: string, ln: string) {
this.firstName = fn;
this.lastName = ln;
}
}
class Customer extends Person {
constructor(fn: string, ln: string) {
super(fn, ln);
}
displayDetails() {
console.log(`First Name :${super.firstName}\tLast Name :${super.lastName}`);
}
}
let c = new Customer("Pradeep", "Kumar");
c.displayDetails();
有人可以解释一下执行过程吗?