When: replacing multiple if/else conditions
Cases can match against expressions in addition to values. Expressions that evaluate to true will be matched.
// user validation
switch (true) {
case !user:
throw new Error("User must be defined.");
case !user.firstName:
throw new Error("User's first name must be defined");
case typeof user.firstName !== "string":
throw new Error("User's first name must be a string");
default:
return user;
}Reference: Using the Switch(true) Pattern in JavaScript