欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Typescript中的泛型

程序员文章站 2022-07-03 19:55:46
...

// 泛型: 就是解决类,接口,方法的复用性,以及对非特定数据类型的支持

// T 表示泛型,具体什么类型是调用这个方法的时候决定的

function getMsgs<T>(value:T): T { 
  return value;
}
getMsgs("主题")

// 泛型类:比如有个最小推算法,需要同时支持返回数字和字符串类型,通过类的泛型来实现

class MinClass<T> { 
  public list: T[] = [];
  add(num: T) {
    this.list.push(num);
  }
  min(): T { 
      var minVal = this.list[0];
      for (var i = 0, leng = this.list.length; i < leng; i++) {
        if (minVal > this.list[i]) {
          minVal = this.list[i];
        }
      }
      return minVal;
  }
}
var m = new MinClass<number>();
m.add(36);
m.add(6);
m.add(8);
m.add(3);
console.log(m.min())
var m2 = new MinClass<string>();
m2.add("f");
m2.add("b");
m2.add("c");
m2.add("s");
console.log(m2.min())

 

相关标签: js typescript