在TypeScript / Javscript中,如何检查B类是否扩展了A类
class A {
...
}
class B extends A {
...
}
assert(B extends A) // How to do something like this?
答案:
多种方法。感谢@Daniel和@AviatorX
B.prototype instanceof A // true
Object.getPrototypeOf(B) === A // true
Reflect.getPrototypeOf(B) === A // true
不知道最常用的TypeScript惯用方式是什么,或者是否缺少任何边缘情况但对于我的用例有用
答案 0 :(得分:1)
您可以使用instanceof
来检查构造函数原型是否为A
的实例:
export class A {
}
export class B extends A {
}
console.log(B.prototype instanceof A);
为我输出true
。