1. interface IPlus<T> {
  2. (a: T, b: T): T
  3. }
  4. function plus(a: number, b: number) {
  5. return a + b
  6. }
  7. function connect(a: string, b: string) {
  8. return a + b
  9. }
  10. const a: IPlus<number> = plus
  11. const b: IPlus<string> = connect

动态传入

  1. interface Keys<T, U> {
  2. key: T;
  3. value: U;
  4. }
  5. const key1 = Keys<number, string> = {key: 1, value: 'string'}
  6. const key2 = Keys<string, number> = {key: 'str', value: 2}
  7. // Array 泛型
  8. const arr: number[] = [10, 20, 30]
  9. const arr: Array<number> = [10, 20, 30]