有时候你会遇到这样的情况,你会比TypeScript更了解某个值的详细信息。 通常这会发生在你清楚地知道一个实体具有比它现有类型更确切的类型。
通过类型断言这种方式可以告诉编译器,“相信我,我知道自己在干什么”。 类型断言好比其它语言里的类型转换,但是不进行特殊的数据检查和解构。 它没有运行时的影响,只是在编译阶段起作用。 TypeScript会假设你,程序员,已经进行了必须的检查。
类型断言有两种形式
第一种是“尖括号”语法:
let someValue: any = "字符串";
let strLength: number = (<string>someValue).length;
第二种为as语法:
let someValue: any = "字符串";
let strLength: number = (someValue as string).length;
类型断言允许程序员告知编译器变量具有更具体的类型,类似于类型转换但不执行额外检查。它包括使用尖括号`<type>`或`astype`的语法,对编译时类型检查有影响,但在运行时无作用。这种机制基于开发者已对数据进行了必要的验证。
55

被折叠的 条评论
为什么被折叠?



