TypeScript(十七)泛型类

119 阅读1分钟

一、泛型类的定义

泛型可以帮助我们避免重复的代码以及对不特定数据类型的支持,把类作为参数来约束数据传入的类型称为泛型类。

二、泛型类的格式

class 名称<T>{

}

new 名称<类型>()

三、泛型类的使用

class GetMin<T>{
  arr: T[] = [];
  add(ele: T) {
    this.arr.push(ele);
  }
  min(): T {
    let min = this.arr[0];
    this.arr.forEach((value) => {
      if (value < min) {
        min = value;
      }
    })
    return min;
  }
}


//number
let getMinNumber = new GetMin<number>();
getMinNumber.add(1);
getMinNumber.add(3);
getMinNumber.add(4);
console.log(getMinNumber.min())     //1



//string
let getMinString = new GetMin<string>();
getMinString.add("a");
getMinString.add("b");
getMinString.add("c");
console.log(getMinString.min())    //a