keyof是索引类型查询操作符。

假设T是一个类型,那么keyof T产生的类型是T的属性名称字符串字面量类型构成的联合类型。

特别说明:T是数据类型,并非数据本身。

代码实例如下:

[typescript] 纯文本查看 复制代码

1

2

3

4

5

6

interface Itest{

  webName:string;

  age:number;

  address:string

}

type ant=keyof Itest;

代码在编辑器截图如下:

如果T是一个带有字符串索引签名的类型,那么keyof T是string类型,并且T[string]为索引签名的类型。

代码实例如下:

[typescript] 纯文本查看 复制代码

1

2

3

4

5

interface Map<T> {

  [key: string]: T;

}

let keys: keyof Map<number>;//string

let value: Map<number>['antzone'];//number

在编辑器截图如下:

TypeScript keyof 用法相关推荐

  1. 一个 TypeScript keyof 泛型用法

    平时工作自认为有 Swift Rust 经验, 所以不需要看 TypeScript 泛型方面的应用, 总以为大同小异, 拒绝看文档学语言, 从我做起. 今日看到一个用上泛型的 pluck 函数 fun ...

  2. typescript keyof 和 typeof 用法

    typeof 操作符可以用来获取一个变量或对象的类型 const states = {name: 1,block: () => {return '123'}, }同一个类型的数据,直接获取它的类 ...

  3. 【TS】10 多个 TypeScript 高级用法总结

    本文主要介绍 TypeScript 的高级用法,适用于对 TypeScript 已经有所了解或者已经实际用过一段时间的同学,分别从类型.运算符.操作符.泛型的角度来系统介绍常见的 TypeScript ...

  4. TypeScript 高级用法总结

    本文主要介绍 TypeScript 的高级用法,适用于对 TypeScript 已经有所了解或者已经实际用过一段时间的同学,分别从类型.运算符.操作符.泛型的角度来系统介绍常见的 TypeScript ...

  5. TypeScript接口用法(基础)

    接口 作用:定义契约(如类型命名.属性检查.函数类型定义等) 1. 类型命名 interface LwhValue {l: number,w: number,h: number, }function ...

  6. typescript parseint不能传number_Typescript 使用日志

    Typescript 使用日志 最近这两年,有很多人都在讨论 Typescript,无论是社区还是各种文章都能看出来,整体来说正面的信息是大于负面的,这篇文章就来整理一下我所了解的 Typescrip ...

  7. Typescript 史上最强学习入门文章 ( 2w 字)

    前言 这篇文章参考了很多文章以及看了一些ts视频,然后把基础的知识点全部总结了一下.感觉比掘金上的所有typescript入门的热门文章都要详细 ,因为那些热门文章我全部都参考了,内容基本都包含了.这 ...

  8. 2021 typescript史上最强学习入门文章(4w字)

    前言 这篇文章出自掘金作者:Jimmy_kiwi 本来自己以前是不喜欢ts的,因为它有一定的学习成本,代码量增加,代码复杂度增加等.后来慢慢觉得,ts的静态检查使得开发者提前发现错误,在前端工程化开发 ...

  9. javascript实战pdf_《TypeScript开发实战》总结

    <TypeScript开发实战>是极客时间上的课程,是由搜狗营销事业部高级架构师的梁宵老师出品,总共47章,涵盖了TypeScript所有用法,以及我们如何在实战中应用TS.本课程还覆盖了 ...

  10. 让前端的子弹飞-TypeScript

    " Any application that can be written in JavaScript,will eventually be written in JavaScript. & ...

最新文章

  1. python七夕快乐_python编写简单抽奖系统
  2. Java课程03总结
  3. 003_JSONNull对象介绍
  4. JVM实用参数(四)内存调优
  5. java图形界面设计 swing之JTable表格的创建使用-添加鼠标监听
  6. bin文件怎么转换成文本文档_怎么把pdf文件转换成word文档?这样转很简单
  7. 【技术文档】jeecg3.7-maven搭建环境入门 - 老版本
  8. java 爬虫 sessionid_java爬虫实战之模拟登陆
  9. RubyInstaller 在 Windows 环境下的安装
  10. 我了解的软件测试基本概念
  11. 操作系统的概念(定义)
  12. Android基础学习(十五)—— 序列化与反序列化(包括 JSON、GSON))
  13. 网络环路导致公司网络瘫痪问题排查
  14. 2022大厂真题盘点!190道大数据高频面试题+答案详解
  15. 如何用MATLAB编写简单的音乐程序
  16. g2o学习记录(4)cmake-gui再次编译g2o及不太完美的处理cs.h错误[20190323已找到完美解决方案](非干货纯记录,可不看)
  17. mysql创建日历表,可以按日或按月增加数据
  18. c1欧洲语言标准是什么水平,CEFR 为什么会成为全球语言标准体系?
  19. 全平台系统提权辅助工具 PEASS-ng
  20. HTTP/2协议详细介绍

热门文章

  1. 解决Ubuntu下任务栏不显示任务的问题
  2. [生存志] 第140节 武帝定十三州
  3. H桥电机驱动电路用电荷泵电路
  4. 第十六周助教心得体会
  5. springboot+微信小程序基于微信小程序的高校学生疫情在校封闭管理系统毕业设计源码240904
  6. java 切割冒号_java split 冒号(java中split是什么意思啊)
  7. hadoop进阶---hadoop性能优化(一)---hdfs空间不足的管理优化
  8. python爬取网易云课堂python课程
  9. 通过优启通制作U盘启动安装Windows系统
  10. Word论文排版技能积累