typescript学习
类型断言
在文件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定义的变量只是不能修改它自身,如果它是引用类型的变量,比如数组,对象,我们是可以修改它的子项的。