泛型接口

  1. /* 泛型接口 */
  2. interface ListApi_4201<T> {
  3. data: T[]
  4. error_message: string
  5. state_code: number
  6. }
  7. // 使用接口时指定类型
  8. let listResult_4201: ListApi_4201<{ name: string, age: number}>
  9. // 定义变量
  10. let firstItem_4201 = listResult_4201.data[0] // 变量推论出来是{ name: string, age: number}

image.png

答案

T
R

解析

函数 animalInfo 的返回值和返回值接口为:
// 返回值 { age: arg1, name: arg2 } // 返回值接口 { age: M; name: N; }
所以泛型 M 的类型为 arg1 的类型。泛型 N 的类型为 arg2。 又因为 arg1 的类型为泛型 T,arg2 的类型为泛型 R。所以空白处答案为 T 和 R。