当前位置: 首页 > news >正文

TypeScript学习第十三篇 - 泛型

在编译期间不确定变量的类型,在调用时,由开发者指定具体的类型。

1. 如何给arg参数和函数指定类型?

function identity(arg){return arg;
}identity(1)
identity('jack')
identity(true)
identity([])
identity(null)

定义的时候,无法确定类型,只有在调用的时候,才能确定参数类型。

function identity<T>(arg:T):T{return arg;
}identity<number>(1)
identity<string>('jack')

2. 多个类型如何传递?

function identity(x,y){return x;
}identity(1,2)
identity('a',2)function identity<T,U>(x:T,y:U):T{return x;
}
identity<number,number>(1,2)
identity<string,number>('a',2)

回顾一下任意属性

interface Person{[k:string]: string | number | boolean;
}

任意属性是不确定有什么属性,泛型是不确定有什么类型。

3. Pick的使用

Pick 就是挑选的意思,可以从已有的类型中,挑选一些类型进行使用。

interface User{id: number;name: string;age: number;
}type AgeType = Pick<User, 'age' | 'name'>let Jack:AgeType = {name: 'Jack',age: 30
}
http://www.lryc.cn/news/424297.html

相关文章:

  • 工业智能网关在汽车制造企业的应用价值及功能-天拓四方
  • LLM - 在服务器中使用 Ollama + OpenWebUI 部署最新大模型
  • 重启人生计划-积蓄星火
  • 2024.08.11 校招 实习 内推 面经
  • LCA(Lowest Common Ancestor)
  • 张钹院士:大模型时代的企业AI发展趋势
  • php连接sphinx的长连接事宜以及sphinx的排除查询以及关于sphinx里使用SetSelect进行复杂的条件过滤或复杂查询
  • 抓包分析排查利器TCPdump
  • 八种排序算法的复杂度(C语言)
  • docker compose部署rabbitmq集群,并使用haproxy负载均衡
  • git强制推送代码教程
  • windows C++-高级并发和异步(三)
  • 河北移动:核心系统数据库成功完成整体迁移 ,实现全栈国产|OceanBase案例
  • ZKRollup
  • letcode 分类练习 树的遍历
  • redisssion分布式锁
  • 嘎嘎嘎拿到去年想要的包
  • 前奏编曲:如何编写二段式前奏
  • 征服云端:Kubernetes如何让微服务与云原生技术如虎添翼
  • 开源AI智能名片系统与高级机器学习技术的融合应用:重塑商务交流的未来
  • Java中synchronized的偏向锁是如何减少锁开销的
  • react18 + ts 使用video.js 直播.m3u8格式的视频流
  • 使用 onBeforeRouteLeave 组合式函数提升应用的用户体验
  • uni-app 吸顶方案总结
  • 【C#】知识汇总
  • 1、Unity【基础】3D数学
  • 虚拟机ubuntu22的扩容记录
  • Docker 常用配置
  • 通过示例了解 .NET Core 中的依赖注入
  • fetch、FormData上传多张图片