0
0
Typescriptprogramming~30 mins

Heterogeneous enums in Typescript - Mini Project: Build & Apply

Choose your learning style9 modes available
Heterogeneous enums
📖 Scenario: You are creating a simple program to represent different types of user roles in a system. Some roles are identified by numbers, and others by strings. This mix is called a heterogeneous enum.
🎯 Goal: Build a TypeScript heterogeneous enum called UserRole with both numeric and string values, then print one of the roles.
📋 What You'll Learn
Create a heterogeneous enum called UserRole
Include numeric and string values in the enum
Print the value of UserRole.Admin
💡 Why This Matters
🌍 Real World
Heterogeneous enums are useful when you need to represent a set of related constants that have different types, like numeric IDs and string codes, in a clear and organized way.
💼 Career
Understanding enums helps in writing clean, maintainable code in TypeScript, which is widely used in web development and many software projects.
Progress0 / 4 steps
1
Create the heterogeneous enum
Create a heterogeneous enum called UserRole with these exact entries: Admin = 1, Editor = 'EDITOR', Viewer = 3, Guest = 'GUEST'.
Typescript
Need a hint?

Use the enum keyword and assign numbers or strings to each member.

2
Add a variable to hold a role
Create a variable called currentRole and set it to UserRole.Admin.
Typescript
Need a hint?

Use let currentRole = UserRole.Admin; to assign the enum value.

3
Write a function to describe the role
Create a function called describeRole that takes a parameter role of type UserRole and returns a string. Inside, use a switch statement on role with cases for UserRole.Admin, UserRole.Editor, UserRole.Viewer, and UserRole.Guest. Return these exact strings respectively: 'Administrator', 'Content Editor', 'Content Viewer', 'Guest User'. Include a default case returning 'Unknown Role'. Assign the result of describeRole(currentRole) to a variable called roleDescription.
Typescript
Need a hint?

Use a switch statement to return the correct string for each role.

4
Print the role description
Write a console.log statement to print the value of roleDescription.
Typescript
Need a hint?

Use console.log(roleDescription); to print the role description.