Recall & Review
beginner
What is a heterogeneous enum in TypeScript?
A heterogeneous enum is an enum that contains both string and numeric values in its members.
Click to reveal answer
intermediate
Why might you use a heterogeneous enum?
You might use a heterogeneous enum to represent values that need both numbers and strings, for example, when some values are codes and others are descriptive labels.
Click to reveal answer
beginner
How do you declare a heterogeneous enum in TypeScript?
You declare it by assigning some members string values and others numeric values explicitly inside the enum block.
Click to reveal answer
beginner
Example: What is the output of this enum member access?
enum Example {
No = 0,
Yes = "YES"
}
console.log(Example.Yes);The output will be the string "YES" because the member Yes is assigned the string value "YES".
Click to reveal answer
intermediate
Can heterogeneous enums cause any issues in TypeScript?
Yes, they can make code harder to understand and maintain because the enum members are not consistent in type, which can confuse type checking and usage.
Click to reveal answer
Which of the following is a valid heterogeneous enum in TypeScript?
✗ Incorrect
Only option A mixes numeric and string values, making it a heterogeneous enum.
What type of values can heterogeneous enums contain?
✗ Incorrect
Heterogeneous enums contain both numeric and string values.
What will be the output of this code?
enum Status {
Active = 1,
Inactive = "NO"
}
console.log(Status.Inactive);✗ Incorrect
Status.Inactive is assigned the string "NO", so that is printed.
Is this enum valid?
enum Test {
One = "1",
Two = 2
}✗ Incorrect
TypeScript allows enums to mix string and numeric values, making this a valid heterogeneous enum.
What is a potential downside of using heterogeneous enums?
✗ Incorrect
Mixing types in enums can make code harder to understand and maintain.
Explain what a heterogeneous enum is and give a simple example.
Think about enums that mix numbers and strings.
You got /2 concepts.
Describe one advantage and one disadvantage of using heterogeneous enums.
Consider why mixing types might help or hurt your code.
You got /2 concepts.