泛型
let lastInArray = <T>(arr:T[]) =>{}
let lastInArray = <T>(arr:Array<T>) =>{}
此时的arr的可以是任意类型的数组且不显示为any
Generics 泛型
多个泛型定义如下:
显式的指明类型后,自动匹配出指定联合类型
Generics 泛型,是动态类型,<T>表示泛型是约定熟成的写法,如下:
泛型
使用<类型>定义类型叫做泛型
泛型方法
通过使用泛型 在使用的时候才指定类型,得到不同类型的函数
const makeTuple = <T = number, U>(x: T, y: U): (T | U)[] => [x, y]
const v1: (number, string)[] = <number, string)makeTuple(1, 'one')
Generics 泛型
类型<> 泛型
数据的模板
通过使用泛型 在使用的时候才指定类型,得到不同类型的函数
let makeTuble = <T, Y = number>(x: T, y: Y) => [x, y];
makeTuble<number, string>(2, '3')
泛型
通过使用泛型,完美的保证代码中类型的一致性
let message = <T>(arr: T[]) => {
return arr[arr.length -1]
}
const a1 = message([1,2,3,4])
const a2 = message(["1","2","3"])
const a3 = message<string | number>(["a","b","c",4])
let makeTuple = <T,Y>(x: T, y:Y) => [x, y]
const v1 = makeTuple(1, "one")
const v2 = makeTuple<number | string>(1, "one")
var dataArr = 50;var colorSet = { color: '#468EFD'};
fanxing
泛型
泛型
通过使用泛型,可以保持数组类型的一致性。