MST

星途 面试题库

面试题:TypeScript枚举类型在项目中优化代码可读性的应用

请描述在一个前端项目场景中,如何通过TypeScript的枚举类型来优化代码的可读性。例如,假设你正在开发一个电商网站的订单模块,订单状态有'待付款'、'已付款'、'已发货'、'已完成'、'已取消',请使用枚举类型来定义这些状态,并说明这样做相较于使用普通字符串有什么优势。
11.3万 热度难度
前端开发TypeScript

知识考点

AI 面试

面试题答案

一键面试
  1. 使用枚举类型定义订单状态
    enum OrderStatus {
        PENDING_PAYMENT = '待付款',
        PAID = '已付款',
        SHIPPED = '已发货',
        COMPLETED = '已完成',
        CANCELED = '已取消'
    }
    
  2. 相较于普通字符串的优势
    • 增强代码可读性:枚举类型使用有意义的名称来表示状态,如OrderStatus.PAID比单纯的字符串'已付款'更能清晰表达含义,使代码阅读者更容易理解其用途。
    • 类型安全性:在TypeScript中,使用枚举类型时,编译器可以进行类型检查。如果代码中期望一个OrderStatus类型的值,就不能随意传入其他字符串,减少了因误传错误字符串导致的运行时错误。
    • 易于维护:当需要修改订单状态的字符串表示时,只需在枚举定义处修改一处,而无需在整个代码库中查找并替换所有相关字符串。例如,如果要将'已付款'改为'付款完成',只需要修改enum OrderStatus中的PAID对应的值即可。