在前端开发中,我们经常需要处理一些固定的枚举类型,例如产品状态、性别等等。cenum 是一个可以帮助我们快速构建和使用枚举类型的 npm 包。
安装 cenum
你可以通过 npm 安装 cenum:
npm install cenum
构建枚举类型
使用 cenum,你可以快速构建一个枚举类型。例如,我们考虑一个地球上的动物的分类,它包括哺乳动物、鸟类和爬行动物三种类型。
const cenum = require('cenum'); const AnimalType = cenum({ MAMMAL: 'mammal', BIRD: 'bird', REPTILE: 'reptile', });
我们将 AnimalType 枚举类型分别定义为 MAMMAL、BIRD 和 REPTILE。
声明枚举类型
在 TypeScript 中,你可以使用 enum 来声明一个枚举类型:
enum AnimalType { MAMMAL = 'mammal', BIRD = 'bird', REPTILE = 'reptile', }
在 ES6 中,你可以通过 Object.freeze() 来声明一个枚举类型:
const AnimalType = Object.freeze({ MAMMAL: 'mammal', BIRD: 'bird', REPTILE: 'reptile', });
但是这仅仅只是一个模拟枚举类型。如果你需要更加完善的枚举类型,我们建议使用 cenum。
使用枚举类型
有了 AnimalType 枚举类型之后,我们可以很方便地使用它。
-- -------------------- ---- ------- -------- ---------------- - ------ ------ - ---- ------------------ ------ -------- -------- ------------ ---- ---------------- ------ --------- ------- ---------- ---- ------------------- ------ --------- --------- ------------- -------- ----- --- -------------- ------ ----- ---------- - -
我们可以通过传入 AnimalType 的值,快速获取对应类型的动物。
console.log(getAnimals(AnimalType.MAMMAL)); // [ 'lion', 'tiger', 'elephant' ]
结论
使用 cenum,我们可以快速地构建和使用枚举类型。在类型判断和类型转换上,它的表现也很出色。如果你想在项目中使用枚举类型,我们推荐你使用 cenum。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/60067354890c4f72775839f2