TypeScript 泛型
TypeScript学习笔记
函数中使用泛型
泛型函数中基本使用
function join<sdq>(one: sdq, two: sdq) { return `${one}${two}`; } join <string> ("我叫", "史迪奇");
|
泛型中数组的使用
function MyName<SDQ>(params: Array<SDQ>) { return params; } MyName <string> (["626", "626"]);
|
多个泛型的定义
function join<sdq, sdz>(one: sdq, two: sdz) { return `${one}${two}`; } join < number, string > (626, "626");
|
类中使用泛型
泛型类中基本使用
class Syp <sdq> { constructor(private syps: sdq[]) {} getSyp(index: number): sdq { return this.syps[index]; } }
const syp = new Syp(["史迪奇", "鲁本", "安琪"]); console.log(syp.getSyp(1));
|
泛型中的继承
interface SDQ{ name:string; }
class Syp <sdq extends SDQ> { constructor(private syps: sdq[]) {} getSyp(index: number): string { return this.syps[index].name; } }
const syp = new Syp([ {name:"史迪奇"}, {name:"鲁本"}, {name:"安琪"} ]); console.log(syp.getSyp(0));
|
泛型的约束
class Syp <sdq extends number | string> { constructor(private syps: sdq[]) {} getSyp(index: number): sdq { return this.syps[index]; } }
const syp = new Syp <string>(["史迪奇", "鲁本", "安琪"]); console.log(syp.getSyp(1));
|
作者: 我叫史迪奇
本文来自于:
https://sdq3.link/TypeScript-genericity.html博客内容遵循 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 协议