【发布时间】:2021-01-26 17:19:34
【问题描述】:
我有这个 python 代码,我正在尝试将其转换为 Javascript/Typescript
import enum
class Shape(enum.Enum):
RECTANGLE = 0
CIRCLE = 1
TRIANGLE = 2
OTHER = 3
print(isinstance(data, Shape))
在 Typescript 中,我可以使用枚举,但这不是我想要的。我需要这样做的能力:
const data = new Shape().RECTANGLE;
console.log(data instanceof Shape); // should return true
使用枚举或对象是不可能做到的。
编辑:在 Typescript 中构建这种基于类的枚举的语法是什么?
【问题讨论】:
-
(data in Shape)适合你吗? -
你能解释更多吗?
new Shape()显然是instanceof Shape,但为什么someShape.RECTANGLE也会是instanceof Shape?这是如何使用的? -
@CharlesBamford 你能举个例子吗?
-
@AlexWayne 我正在尝试获取在打字稿中创建这种“基于类的枚举”的语法
-
类似
const Shapes = {RECTANGLE: "RECTANGLE", OTHER: "OTHER"}; const data = Shapes.OTHER; console.log(data in Shapes);
标签: javascript python typescript class enums