TypeScript学习笔记2-联合类型、类型断言

联合类型

联合类型:顾名思义,简单的说就是多种类型联合起来

栗子1:运用在函数中

栗子2:运用在dom上(取不到值时可能为null类型)

栗子3:定时器是个常用例子

在TypeScript中,联合类型允许一个变量可以存储多种不同类型的值。通过使用竖线 来连接多个类型,创建联合类型的语法形式为`type1 | type2 | type3`。

类型断言

类型断言:简单来说就是人为将某一种不确定的类型断言为确定的类型,这只是在编译器层面的欺骗行为。

经典案例!

let img = document.getElementById("#img")

在底层原理中,document.getElementById返回的就是一个 HTMLElement | null 的值

这个时候,如果我们直接进行下面这个操作是会报错的

img.src = xxxx;
//或者
img.height = xxx;

因为null不能这样子去调用src或者height什么的。

但我们又难以避免对获得的元素的属性进行操作,这个时候就需要进行类型断言

let img = document.getElementById("#img") as HTMLImageElement
img.src = xxx;//没问题!

let img = <HTMLImageElement>document.getElementById("#img")
img.src = xxx;//没问题!

两种写法

  • as语法:value as Type (用的更多)
  • 尖括号语法:<Type>value

在TypeScript中,类型断言允许开发人员手动指定一个值的类型,即告诉编译器某个变量的确切类型。这在某些情况下是非常有用的,尤其是当开发人员比编译器更了解变量的类型时。

无论是尖括号语法还是as语法,它们实际上是告诉编译器"相信我,我知道这个变量的类型是什么"。

注意!:类型断言只在编译阶段起作用,不会对真实的运行时类型产生影响。因此,在进行类型断言时,应确保断言的类型是正确的,以避免潜在的类型错误。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值