TypeScript——类型操作符typeof、keyof、in的使用介绍

一、typeof 类型操作符

  1. typeof操作符用于获取变量的类型,因此这个操作符的后面接的始终是一个变量,而且需要一个类型来接收
//1.定义一个person1的对象或者简单的类型都可以
let person1 = {
  name: '张三',
  age: 19
};
//2.把person1对象的类型通过typeof引用给类型person2
type person2 = typeof person1; //{name:string,age:number}

二、keyof类型操作符

  1. keyof类型操作符可以用于获取某种类型的所有键,其返回类型是联合类型
//1.定义一个类型person1
type person1 = {
  name: string;
  age: number;
};
//2.使用keyof把类型person1的类型转成联合类型name|age,给新类型person2
type person2 = keyof person1;
//3.person2联合类型约束变量person3
let person3: person2 = 'name';

三、in操作符

  1. in操作符会遍历类型,只能遍历联合类型
//1.定义一个类型person1
type person1 = {
  name: string;
  age: number;
};
//2使用keyof变成联合类型name|age,在使用in遍历
let person2: { [K in keyof person1]: person1[K] } = {
  name: '张三',
  age: 19
};

你可能感兴趣的:(TypeScript,typescript,javascript,前端)