我正在尝试通过枚举访问映射中的值,并创建一个可翻译的应用程序来处理其中的所有字符串。这两个问题有所重叠,我必须决定是使用枚举还是JSON格式中的对象。
那么,枚举和对象之间的区别和用法究竟是什么呢?
例如:
- 我可以使用枚举访问数组,插入标签和其他内容
const enum FieldNames {
FirstField: "Field One",
SecondField: "Field Two"
};
someFieldArray[FieldNames.FirstField].label = FieldNames.FirstField;
someFieldArray[FieldNames.SecondField].label = FieldNames.SecondField;
- 或者我可以通过对象实现相同的行为
const FieldNames = {
FirstField: "Field One",
SecondField: "Field Two"
};
someFieldArray[FieldNames.FirstField].label = FieldNames.FirstField;
someFieldArray[FieldNames.SecondField].label = FieldNames.SecondField;
我真的不明白为什么要选择枚举而不是简单对象。在我看来,一个对象有更多的好处而没有任何缺点。
y
的类型设置为string
,而不是从@Martynas Skučas下面提供的FieldNames
对象的实际值类型。这里是链接:https://dev59.com/e1YN5IYBdhLWcg3wfoNj#59932722 - Florian Leitgeb