<返回更多

Typescript高级技巧 - 基本类型中的const

2022-08-11    Web技术前沿
加入收藏

 

Typescript的编译器挺有趣,如果使用const声明对象,它会大量使用基本类型来声明,看下面的例子:

 

这个最简单的声明,Typescript会推断出age的类型是number,你可以对它赋任何数值。

 

但如果我们使用const声明这个变量,它的类型会变成什么?

 

可以看到 30 就变成它的类型,而且再也无法更改。字符串也一样,会有这种限制:

 

userName使用const定义,它的类型就被声明成"George",而且无法更改。

数组

如果对一个数组使用const定义,情况就有点不一样了,看下面的例子。它只是定义了cars为字符串数组类型,你还是可以对数组进行各种操作,比如插入一个数组元素之类的。

 

如果你想限定死数组,那就需要加 as const, 如下:

 

大家可以观察它的类型,push操作也会编译失败。

对象

对象和数组差不多,如果直接const定义,你还是可以直接修改对象的字段,除非加入as const,这样它会给每个字段加入readonly, 并且使用基本值作为其类型。

比如:

 


 

声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>