Нет.
Выражения, заключенные в скобки, оцениваются первыми. В вашем фрагменте это означает в этой строке:
(day == ("Monday" || "Tuesday" || "Wednesday"))
("Monday" || "Tuesday" || "Wednesday")
оценивается в первую очередь, прежде чем рассматривать что-либо еще. Это три непустые строки - и непустые строки truey . Поскольку JavaScript использует оценку короткого замыкания , выражение будет вычисляться до первого истинного значения, "Monday"
, каждый раз.
Таким образом, первое условие эквивалентно этому:
(day == "Monday")
И второе условие к этому, как написано:
(day == "Monday" || day == "Tuesday"|| day == "Wednesday")
Если вы хотите проверить одну переменную по множеству значений одновременно, я настоятельно рекомендую используя массивы. Следующее условие логически эквивалентно вашему второму условию:
(["Monday", "Tuesday", "Wednesday"].includes(day))