五、typescript泛型
在定义函数或是类时,遇到类型不明确就可以使用泛型;
定义单个泛型:
这里的泛型使用T也可以使用其他;
1 function aaa<T>(a:T):T{ 2 return a; 3 } 4 //使用: 5 console.log(aaa(10));//不指定泛型,TS可以自动对类型进行推断 10 6 console.log(aaa<string>("hello"));//指定泛型 hello
定义多个泛型
1 function bbb<K,T>(a:K,b:T):T{ 2 return b; 3 } 4 console.log(bbb<string,number>("hello",123123));//指定泛型 123123
泛型指定范围
1 //T extends inter 表示T必须是inter实现类 or 子类 2 function CCC<T extends inter>(a: T): number { 3 return a.name.length; 4 } 5 interface inter { 6 name: string; 7 } 8 class XX implements inter { 9 name: string; 10 constructor(name: string) { 11 this.name = name 12 } 13 } 14 const xx = new XX("JJJ"); 15 console.log(CCC(xx));//指定泛型 打印结果3
类中发泛型使用:
1 class DD<T>{ 2 name: T; 3 constructor(name: T) { 4 this.name = name 5 } 6 } 7 const yy = new DD<string>("aaaa"); 8 console.log(yy);//{name: 'aaaa'}
博客园地址:https://www.cnblogs.com/lixiuming521125/
标签:
typescript
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
2021-11-07 五(二)、spring 声明式事务xml配置
2021-11-07 五(一)、spring 声明式事务注解配置
2020-11-07 js选择器的复杂选择器