最近在看TypeScript,接触到了一些新的概念,比如说枚举,
先来看一下什么是枚举类型:
enum Country {
China,
USA,
Russia
}
上面的代码就在ts中定义了一个枚举类型(数字枚举),这里如果不做任何修改的话,
Country.China的值为0,Country.USA的值为1,往后依次类推每一项的值都 +1
看起来有点类似js中镜像翻转后的数组,又有点像序列化之后的对象是吧?
我开始也是这么认为的,那么这个枚举类型到底有什么用处,或者说和已有类型(对象和数组)有什么使用上的区别呢?
。。。
在百度了一些资料后,我得出的结论是:
ts中的枚举类型和普通的js对象本质上没有区别,只是对于开发者来说,相较于直接使用值类型去做判断,枚举类型更易读,能够提升代码的可读性和易维护性。