TypeScript中枚举类型如何理解与应用,有哪些独特场景和优势?