TypeScript-自动类型推断
  TEZNKK3IfmPf 2023年11月13日 22 0
  • 不用明确告诉编译器具体是什么类型, 编译器就知道是什么类型

根据初始化值自动推断:

  • 如果是先定义在初始化, 那么是无法自动推断的
let value;
value = 123;
value = false;
value = 'abc';
  • 如果是定义的同时初始化, 那么​​TS​​ 就会自动进行类型推断
let value = 123;
value = 456;
value = false;
value = 'abc';

TypeScript-自动类型推断

如上的 ​​let value = 123;​​​ TS 会自动推断为 ​​let value: number = 123;​​​ 所以如上的 ​​value​​​ 变量只能存储 ​​number​​​ 类型的数据,如上是单个数据类型的推断,接下来在来看一个 ​​联合类型​​ 的推断:

let arr = [1, 'a'];
arr = ['a', 'b', 'c', 1, 3, 5, false];

如上的 ​​let arr = [1, 'a'];​​​ TS 会自动推断为 ​​let arr: (number | string) = [1, 'a'];​​​ 所以如上的 ​​arr​​​ 变量只能存储 ​​number​​​ 与 ​​string​​ 类型的数据。

根据上下文类型自动推断

window.onmousedown = (event) => {
console.log(event.target);
}

当我在编译器当中编写了如上的代码之后编译器在函数的入参当中的参数后面给了一个提示如下:

TypeScript-自动类型推断

可不是博主自己编写的哦,说明它已经推断出了具体的类型了,雷同如下代码:

window.onmousedown = (event: MouseEvent) => {
console.log(event.target);
}
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

上一篇: webpack-url-loader 下一篇: TypeScript-webpack配置
  1. 分享:
最后一次编辑于 2023年11月13日 0

暂无评论

推荐阅读
  TEZNKK3IfmPf   2023年11月15日   22   0   0 初始化i++
  TEZNKK3IfmPf   2024年04月19日   36   0   0 typescript数组编译器
  TEZNKK3IfmPf   2023年11月15日   19   0   0 父类C++编译器
TEZNKK3IfmPf