TypeScript中的typeof()、keyof()是什么意思?
知识回调(不懂就看这儿!)
知识专栏 | 专栏链接 |
---|---|
TypeScript知识专栏 | https://blog.csdn.net/xsl_hr/category_12030346.html?spm=1001.2014.3001.5482 |
有关TypeScript的相关知识可以前往TypeScript知识专栏查看复习!!
场景复现
最近在前端的深入学习过程中,接触了与网络请求相关的内容,于是计划用三个专栏(HTTP、Axios、Ajax)和零碎文章总结记录最近的学习笔记。由于项目前端技术栈的脚本语言为TypeScript
,在研读小程序异步请求封装部分的代码时,碰到了几个关于TypeScript
的小知识点不太清楚。
问题代码截图:
因此,本文以 TypeScript中的typeof()
、keyof()
为主要内容展开讲解。
核心干货👇👇👇
举例引入
在使用TypeScript的时候,我们经常会类似下面的例子一样编写代码:👇👇👇
// 定义一个枚举类型的对象
enum ColorsEnum {
white = '#ffffff',
black = '#000000',
}
// 定义Colors类型 里面的值只能是ColorsEnum中的值
type Colors = keyof typeof ColorsEnum;
最后一行代码等价于:
type Colors = "white" | "black" // Colors的值只能是“white”和“black”中的一个