Как рассказать класс экземпляра - PullRequest
0 голосов
/ 05 марта 2019

Есть ли способ указать, к какому экземпляру класса относится объект в Typescript?Я имею в виду более конкретно, чем просто «Объект».

Если бы у вас было это:

const x : MyClass = new MyClass();
console.log(typeof(x));

Вы бы получили:

'Object'

Тогда, если бы вы сделали это:

console.log(x instanceof MyClass);

Вы получите:

Uncaught ReferenceError: MyClass is not defined

Как я могу получить его, чтобы распечатать 'MyClass'?

1 Ответ

0 голосов
/ 05 марта 2019

Вы можете использовать x.constructor.name.

Свойство .constructor объекта содержит ссылку на функцию конструктора, которая создала экземпляр (функцию класса), и .name свойство функции сохраняет свое имя.

Это JavaScript, TypeScript не задействован.Типы TypeScript здесь не помогают, они исчезают при компиляции в код JavaScript.

...