Typescript学习笔记

146 阅读1分钟

一、接口(interface)

作用:用来规定对象的形状

二、数据类型的判断
①instanceof
判断对象属于哪个类,myDog instanceof Dog 即为判断对象是否属于Dog类
②typeof
用于检查数据类型,如 typeof value === "number"

③类型断言

let someValue: any = "this is a string";
let strLength: number = (someValue as string).length;  

是告诉我的数据属于什么类型

三、泛型

通俗理解泛型是一个占位符,通过泛型可以增加代码的复用性,例如

interface KeyValuePair<K, V> {
  key: K;
  value: V;
}
 
let pair1: KeyValuePair<number, string> = { key: 1, value: "one" };
let pair2: KeyValuePair<string, number> = { key: "two", value: 2 };

/
/

Partial<T>,当使用Partial来定义一个类型T的部分类型时,它会将T中的全部属性变为可选属性 Required<T>,当使用Required来定义一个类型T的部分类型时,与Partial相反,它会把全部属性变为必选属性
Record类型接收两个泛型参数:第一个参数指定对象的键的类型,第二个参数指定对象值的类型。其语法结构为Record<KeyType, ValueType>,其中KeyType表示键的类型,ValueType表示值的类型。