typescript学习

2 minute read

类型断言

在文件packages/shared/src/index.ts中第22行至第26行

export const babelParserDefaultPlugins = [ ‘bigInt’, ‘optionalChaining’, ’nullishCoalescingOperator’ ] as const 上面代码中的as是类型断言之一,

它的作用就是断定babelParserDefaultPlugins是const类型。

第二种类型断言即尖括号的类型断言

let str = bar; 它的作用是断定bar的类型是string。

这两种的类型断言作用是一样的,区别只是写法上不同。

一般我们使用as后面跟的是一个数据类型比如string,number,any或interface

使用as const是标定此变量是只读的。

有些人会问不是已经使用了const定义变量了吗?此变量就是不能修改的呀!

其实const定义的变量只是不能修改它自身,如果它是引用类型的变量,比如数组,对象,我们是可以修改它的子项的。