解释

比如你定义了一个变量类型是any,可是你明确知道此处其真实的值一定是一个字符串,那么你就可以告诉编译器,"相信我,这是一个字符串"。

使用

类型断言有两种形式,我们以上面字符串为例来演示。

尖括号

let someValue: any = "this is a string";
let strLength: number = (<string>someValue).length;

as语法

let someValue: any = "this is a string";
let strLength: number = (someValue as string).length;

两种形式是等价的,至于使用哪个大多数情况下是凭个人喜好,然而,当你在TypeScript里使用JSX时,只有as语法断言是被允许的。


zxl20070701
136 声望14 粉丝