let num = 50;
switch (num) {
case num > 60:
console.log("Нет, переменная меньше 60");
break;
case num < 40:
console.log("Нет, переменная больше 40");
break;
case num == 50:
console.log("Да, переменная ровна 50");
break;
}
[Deprecation] Element.createShadowRoot is deprecated and will be removed in M73, around March 2019. Please use Element.attachShadow instead. See https://www.chromestatus.com/features/4507242028072960 for more details.
createShadowTree @ include.preload.js:411
ElemHide @ include.preload.js:384
(anonymous) @ include.preload.js:512
[Violation] '2P_181d5151-666a-4b23-9dd3-0fe5446b5451' handler took 242ms
switch (num) {
// никогда не сработает потому что если num>60 то будет сравнивать num c true если мешьше 60 то с false
case num > 60:
console.log("Нет, переменная меньше 60");
break;
// никогда не сработает потому что если num<40 то будет сравнивать num c true если бльше 40 то с false
case num < 40:
console.log("Нет, переменная больше 40");
break;
// никогда не сработает потому что если num=50 то будет сравнивать num c true
case num == 50:
console.log("Да, переменная ровна 50");
break;
}
switch (num) {
// никогда не сработает потому что если num>60 то будет сравнивать num c true если мешьше 60 то с false
case num > 60:
console.log("Нет, переменная меньше 60");
break;
// никогда не сработает потому что если num<40 то будет сравнивать num c true если бльше 40 то с false
case num < 40:
console.log("Нет, переменная больше 40");
break;
// никогда не сработает потому что если num=50 то будет сравнивать num c true
case num == 50:
console.log("Да, переменная ровна 50");
break;
}
case проверяет переменную на строгое соответствие, так что не работает именно switch/case
у какого чувака? У udemy? Не смотрел его курсы, может он не чистый js использует, а чтото типа ts с расширенным функционалом для switch, с последующей транспиляцией в js?
у какого чувака? У udemy? Не смотрел его курсы, может он не чистый js использует, а чтото типа ts с расширенным функционалом для switch, с последующей транспиляцией в js?
case проверяет переменную на строгое соответствие, так что не работает именно switch/case
Оператор case не аналог оператора if, он не умеет обрабатывать условияне соответствует действительности.
case 50:
Оператор case не аналог оператора if, он не умеет обрабатывать условия, а сравнивает переменную с фиксированным значением.
switch (num) { // никогда не сработает потому что если num>60 то будет сравнивать num c true если мешьше 60 то с false case num > 60: console.log("Нет, переменная меньше 60"); break;
либо делать switch(true) и тогда будут работать более сложные условия.
Об этом у нас тут и срач, некоторые в это не верят.
let num = 50;
switch (num) {
case num > 60:
console.log("Нет, переменная меньше 60");
break;
case num < 40:
console.log("Нет, переменная больше 40");
break;
case num == 50:
console.log("Да, переменная ровна 50");
break;
}