假设我有这个类和它的对象
export class Person {
constructor(name: string, age: number) {
this.name = name;
this.age = age;
}
public name: string,
public age: number
}
const person = new Person();
有没有什么方法可以得到它的属性类型,比如:
console.log(person.age.type) ????? => 'number'
1条答案
按热度按时间7kjnsjlb1#
请记住,所有特定于TypeScript的数据(如类型注解)都不会进入运行时。您不能在运行时自动物化您声明的任何非JavaScript本地数据。
然而,每当一个变量或字段贝内赋值时,你能做的就是用
typeof
操作符询问它的类型。但是,请注意,如果字段没有值,您将无法获得有关字段类型的任何信息:
另外,请记住,在TypeScript中,当您定义这样非常简单的数据类并希望简化表示法时,只需向构造函数的参数添加可见性说明符,将它们转换为自动保存传递值的字段: