TypeScript:如何获取、判断变量类型

在 TypeScript 中,有以下几种方式可以获取、操作、判断变量的类型

1、类型注解

在声明变量时可以显式地为变量添加类型注解,指定变量的类型

let myVariable: string = 'hello';

2、typeof 操作符

使用 typeof 操作符可以获取一个未被类型注解的变量的基本类型,类似于在 JavaScript 中的用法。但是请注意,TypeScript 的 typeof 在运行时检查中主要用于基本类型(如 string、number、boolean 等),对于复杂类型(如自定义类型或类)它可能不会提供足够的信息。

let myVariable = 'hello';
console.log(typeof myVariable); // 输出 "string"

3、Typeof Types 类型查询操作符

在编译时期,你可以使用类型查询操作符 typeof 来引用一个类型。

let myVariable = 'hello';
let myVariableType = typeof myVariable; // 类型为 "string"

4、反射

在运行时,对于类的实例,你可以通过访问 constructor.name 属性来获取其实例类型的名字

class MyClass {}
let instance = new MyClass();
console.log(instance.constructor.name); // 输出 "MyClass"

5、instanceof 操作符

用于检查一个对象是否是某个类的实例

class MyClass {}
let instance = new MyClass();
if (instance instanceof MyClass) {
    console.log('instance is an instance of MyClass');
}

6、类型别名和接口

你也可以创建类型别名或接口来定义和引用复杂的类型结构

type MyType = { name: string; age: number };
let example: MyType = { name: 'Alice', age: 30 };

请注意,上述方法中的 typeof 操作符和 instanceof 操作符都是在运行时进行类型检查的手段,而不是在编译时由 TypeScript 提供的类型信息获取方式。如果你需要在编译阶段确定类型信息,通常通过类型注解和 TypeScript 的类型系统来完成。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容