Typescript keyof操作符

2022-05-021108次阅读TypeScript

keyof索引类型操作符。对于任何类型T,keyof T的结果为T上已知的公共属性名的联合。

interface User {
  name: string;
  age: number;
  work: string;
}

function test<T, Key extends keyof T> (obj: T, key: Key): T[Key] {
  return obj[key];
}

test({
  name: 'w',
  age: 1,
  work: 'w'
}, 'name');

或者

interface User {
  name: string;
  age: number;
  work: string;
}

type UserKey = keyof User;

function test (obj: User, key: UserKey): User[UserKey] {
  return obj[key];
}

test({
  name: 'w',
  age: 1,
  work: 'w'
}, 'name')

 

上一篇: css轻松移除最后一个子元素样式  下一篇: 查找哪些JavaScript变量泄漏到全局范围  

Typescript keyof操作符相关文章