类型断言(Type Assertion)
TypeScript 允许你覆盖它的推断,并且能以任何你想要的方式分析它,这种机制被称为类型断言。
类型断言使用 as
关键字或者 <type>
表示。
类型断言可以用来手动指定一个值的类型,允许变量从一种类型更改为另一种类型。
语法格式
<类型>值 (有兼容性问题, 在使用到了JSX的时候兼容性不是很好)
或:
值 as 类型
用途
(1)将一个联合类型推断为其中一个类型
(2)将一个父类断言为更加具体的子类
(3)将任何一个类型断言为any
(4)将any断言为一个具体的类型
实例
例如: 一个any类型的变量, 明确的知道这个变量中保存的是字符串类型,此时,可以通过类型断言将 any
类型转换成 string
类型, 使用字符串类型中相关的方法。
如下:
let str:any = 'this is a string';
// any时没有.length的提示
let strLen = (str as string).length;
console.log(strLen);