Avatar ·

如何在 TypeScript 中获取枚举(enum)所有值的名称(键)?

大家好!我刚开始学习 TypeScript,在处理枚举(enum)时遇到了问题。 我有一个这样的订单状态枚举: ```typescript enum OrderStatus { Pending = "PENDING", Processing = "PROCESSING", Shipped = "SHIPPED", Delivered = "DELIVERED", Cancelled = "CANCELLED" } ``` 我需要在管理员界面中用一个下拉列表(select)显示所有状态。我尝试使用 `Object.keys()` 和 `Object.values()`,但得到了奇怪的结果。 当我写: ```typescript console.log(Object.keys(OrderStatus)); ``` 控制台输出:`["1", "2", "3", "4", "5", "Pending", "Processing", "Shipped", "Delivered", "Cancelled"]` 为什么会出现数字?我期望只看到名称:`["Pending", "Processing", "Shipped", "Delivered", "Cancelled"]`。 而尝试通过 `Object.values()` 获取值时也是一团糟。我读到这与 TypeScript 编译的方式有关。