企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
>[success] # 函数表达式/函数别名/接口 --配合泛型写法 >[danger] ##### 函数表达式的定义方式 ~~~ let getArray: <T>(arg: T, times: number) => T[] // 泛型对应参数类型为any getArray = (arg: any, times: number) => { return new Array(times).fill(arg) } getArray(123, 3).map((item) => item.length) // 报错帮你自动检测了 ~~~ >[danger] ##### 函数别名 ~~~js type GetArray = <T>(arg: T, times: number) => T[] let getArray: GetArray = (arg: any, times: number) => { return new Array(times).fill(arg) } ~~~ >[danger] ##### 接口类型 ~~~ interface GetArray<T> { (arg: T, times: number): T[], array: T[] } //泛型和 interface interface KeyPair<T, U> { key: T; value: U; } let kp1: KeyPair<number, string> = { key: 1, value: "str"} let kp2: KeyPair<string, number> = { key: "str", value: 123} interface ReturnItemFn<T> { (para: T): T } const returnItem: ReturnItemFn<number> = para => para //const returnItem: ReturnItemFn<number> = (para: any) => para ~~~