JavaScript (TypeScript) クラス、型の判定
class Foo {} class Bar extends Foo {} const foo = new Foo(); const bar = new Bar(); console.log(typeof foo); // -> 'object' console.log(foo.constructor === Foo); // -> true console.log(foo instanceof Foo); // -> true console.log(foo instanceof Object); // -> true console.log(bar.constructor === Foo); // -> false (継承元はわからない) console.log(bar.constructor === Bar); // -> true console.log(bar instanceof Foo); // -> true console.log(bar instanceof Bar); // -> true