TypeScript教程# 15:泛型

Posted 凯小默

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TypeScript教程# 15:泛型相关的知识,希望对你有一定的参考价值。

说明

尚硅谷TypeScript教程(李立超老师TS新课)学习笔记。

泛型

在定义函数或是类时,如果遇到类型不明确就可以使用泛型

比如定义了一个泛型T

function fn<T>(a:T):T 
    return a;

可以直接调用具有泛型的函数

  1. 不指定泛型,TS 可以自动对类型进行推断
let res = fn(313);

  1. 指定泛型
let res2 = fn<string>("kaimo313");

泛型可以同时指定多个:

function fn2<T, K>(a:T, b:K):T 
    console.log(b);
    return a;


let res3 = fn2<number, string>(313, "kaimo313");

T extends Inter 表示泛型必须时Inter实现类(子类)

interface inter 
    name: string


function fn3<T extends inter>(a: T):string 
    return a.name;


fn3(name: "kaimo313")

给类加泛型

class MyClass<T>
    name: T;
    constructor(name: T) 
        this.name = name;
    

const mc = new MyClass<string>("kaimo");

以上是关于TypeScript教程# 15:泛型的主要内容,如果未能解决你的问题,请参考以下文章

TypeScript教程# 1:TS简介

TypeScript教程学习笔记16篇(完结)

TypeScript教程# 14:属性的封装

TypeScript教程# 4:TS中类型

来自接口实现的 Typescript 泛型推断

TypeScript教程# 13:接口