TypeScript 泛型接口

TypeScript 泛型接口有两种写法,这两种写法的区别在于将泛型变量<T>的位置不同。本文将会给大家详细介绍,欢迎大家仔细阅读。

第一种泛型接口写法,泛型定义在函数部分,如下所示。

interface MyDate1{
    <T>(value: T): T;
}

let date: MyDate1 = function getDate<T>(value: T) {
    return value;
}

let value = date<number>(123456);
console.log(value);

第二种泛型接口写法,泛型定义在接口部分,如下所示。

interface MyDate2<T> {
    (value: T): T;
}

function getDate<T>(value: T) {
    return value;
}

let date: MyDate2<string> = getDate();

let value = getDate("123456");
console.log(value)

原文链接:http://www.mybatis.cn/typescript/1990.html