简述typescript
简称ts,是js的一个超集,也是带有类型检测的js,拓展了js语法。
优点:程序更容易理解;减少错误(编译期间排除常见错误);包容性强(兼容js)。
特点:跨平台;面向对象(类、接口、枚举);类型检测。
ts的数据类型
除js的类型外,还包含enum(枚举)、any(任意值)、void(表示无,常用于表示无返回值的函数)
ts中的类、接口、枚举、模块
类(class):是自定义的引用数据类型,简称类。
接口(interface):描述一个对象的属性和方法,是个集合。
枚举(enum):对象所有可能取值的集合。
模块:ts中的模块与js相似,import导入、export导出
泛型
是一种特性,允许定义函数、类、接口等数据结构时,可使用类型参数的占位符,从而增加代码灵活性和复用性。
优点:增加灵活性、类型安全、可读性和可维护性。
应用场景:创建可复用的组件或函数、处理不确定的数据类型、操作不同类型的集合、函数参数类型检测等等。
interface、type
相似之处:
两者都可用来描述object和function;
两者都可以被继承。
不同之处:
type可定义基本类型,而interface不行;
type可声明联合类型(列子:string|number);
interface有声明合并(多次声明同一个接口,ts会将其合并到一个声明中),而type不会。
keyof、typeof
keyof用于获取对象类型的键的并集;
typeof用于获取值的类型。
标签:面试题,Typescript,ts,js,interface,枚举,类型,type From: https://www.cnblogs.com/wx3091/p/18546815