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