gpt4 book ai didi

javascript - typescript 对象奇怪的类型语法

转载 作者:搜寻专家 更新时间:2023-10-30 22:05:32 25 4
gpt4 key购买 nike

阅读时TypeScript handbook ,我遇到了以下示例:

interface Shape {
color: string;
}

interface Square extends Shape {
sideLength: number;
}

var square = <Square>{};
square.color = "blue";
square.sideLength = 10;

问题是 - <Square>{} 到底是什么? ?对我来说似乎是一种奇怪的语法。从 Java/C# 的 Angular 来看,它就像一个匿名对象的泛型。它到底是什么,这种创作的局限性是什么?

最佳答案

这是“类型转换”。基本上将以下内容({},一个没有字段的对象字面量)解释为 Square。因此,由于 square 的使用,TypeScript 编译器会将其推断为 Square 类型,并且 Intellisense 将显示正确的成员。

当然这不是真正的“转换”,因为我们知道类型只是 TypeScript 中的一种幻觉。这一切都是为了编译器。

关于javascript - typescript 对象奇怪的类型语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35212649/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com