TypeScript / JavaScriptで、クラス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の慣用的な方法がわからない、またはエッジケースが欠落しているが、私のユースケースでは機能したかどうか
を使用しinstanceof
て、コンストラクターのプロトタイプが次のインスタンスであるかどうかを確認できますA
。
export class A {
}
export class B extends A {
}
console.log(B.prototype instanceof A);
true
私のための出力。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加