-
在
ts
中,我们可以对变量的类型进行约束,比如下面这样
-
当我们把
a
声明为number
类型的变量,就不可以再为它赋其他类型的值 -
但实际上,即使我们不显式指定它的类型,
ts
也可以自动推断出正确的类型,如下
-
因为给
a
赋初值的时候,为它指定的123
是number
类型的,所以ts
知道,a
是number
类型的 -
因此,不可以再给
a
赋其他类型的值 -
既然不需要给变量显式的类型约束,
ts
也可以得到变量的类型,那么,有没有其他情况,需要显示给变量指定类型的,如下 -
首先看第一种情况
-
因为
sum
函数的返回值类型是不确定的,因此a
的类型就不确定,所以,需要我们去指定a
的类型,如下: -
第二种情况
-
如果我们的本意是想求
123 + 123 = 246
,但是不小心传入了字符串参数,那么得到的结果就会是'123123'
,并且js
不会报出任何的错误,这时,就需要显式的指定类型,如下:
-
当参数类型不正确时,可以及时发现错误
-
总结:并不是任何时候都需要给变量明确指定类型,因为
ts
会自动推断。只有ts
无法正常推断,或者函数形参时,才有必要显式声明
TypeScript 学习总结 —— 类型约束
最新推荐文章于 2024-04-22 23:18:29 发布