поэтому у меня есть кусок кода, где у меня есть массив (ar = [1,2,3,4,5]) и две функции. функции должны делать то же самое: распечатать что-то, если 1 существует в массиве. но функция func всегда возвращает «nope» вместо «one», но функция other всегда возвращает правильную вещь. единственная разница между этими двумя функциями - функция func имеет переключатель вместо if/else. Зачем? в исходном коде есть около 12 случаев, поэтому мне действительно нужно использовать коммутатор.Оператор switch не ведет себя так, как должен
var ar=[1,2,3,4,5];
function func(num){
var one=num;
switch (one) {
case one===1:
console.log("one");
break;
default:
console.log("nope");
break;
}
}
function another (num) {
if(num===2){
console.log("found two");
} else if(num===3){
console.log("found thre");
} else{
console.log("nope");
}
}
ar.forEach(func);
ar.forEach(another);
Обновите свой 'case one === 1:' to 'case 1:'. В настоящее время вы делаете это как 'case true:' – choz