Avatar ·

Como obter o nome da classe de um objeto em tempo de execução no TypeScript?

Olá! Estou escrevendo uma aplicação em TypeScript que lida com serialização de diferentes entidades. Tenho uma hierarquia de classes e preciso determinar em tempo de execução de qual classe exatamente um objeto é instância, para processá-lo corretamente. Por exemplo, tenho uma classe base `Shape` e duas subclasses: `Circle` e `Rectangle`. Quero escrever uma função que recebe um array de formas e imprime o tipo de cada uma. Em JavaScript, eu usaria `obj.constructor.name`, mas no TypeScript essa propriedade pode estar ausente ou ser indefinida após minificação/build. Além disso, o TypeScript é fortemente tipado, e simplesmente acessar `constructor` nem sempre dá o resultado esperado. Aqui está um código simplificado que não funciona como espero: ```typescript class Shape { constructor(public name: string) {} } class Circle extends Shape { constructor(public radius: number) { super('Circle'); } } class Rectangle extends Shape { construct