TypeScript 规范所称的类型断言有什么区别:
var circle = <Circle> createShape("circle");
和较新 as的运营商:
as
var circle = createShape("circle") as Circle;
这两者通常用于编译时转换?
不同之处在于它as Circle适用于 TSX 文件,但<Circle>与 JSX 语法冲突。as为此而推出。
as Circle
<Circle>
例如,.tsx文件中的以下代码:
.tsx
将导致以下错误:
错误 TS17002:“Circle”需要对应的 JSX 结束标记。
但是,as Circle会工作得很好。
从现在开始使用as Circle。这是推荐的语法。