Конструкция Switch в JS – Урок #4 | Базовый JavaScript

preview_player
Показать описание
ПОДДЕРЖАТЬ АВТОРА И КАНАЛ:

Webmoney:
Z166344793421
R369744777501
U871336351200

Вступайте в группу и задавайте интересные вопросы!!!

Конструкция switch заменяет собой сразу несколько if. Чтобы в этом убедиться давайте сделаем практическое применение для простого калькулятора.

Материал урока и домашка:

КУРС ПО HTML5 & CSS3:
Рекомендации по теме
Комментарии
Автор

Красавчик, на лерне читаю не понимаю, либо долго вникаю)у тебя смотрю видос курю айкос и все заебись))

Sergey
Автор

Спасибо, Андрей!
Объяснения - огонь!!!
А конструкция "switch" гораздо удобнее, чем if-else.

let age = prompt('Укажите Ваш возраст:');
age = parseInt(age);

switch (true) {
case age >=0 && age <= 12:
document.write(`Ты ребенок!`);
break;
case age >=13 && age <= 21:
document.write(`Ты подросток!`);
break;
case age >=22 && age <= 31:
document.write(`Ты в полном расцвете сил!`);
break;
case age >=32 && age <= 45:
document.write(`Пора задуматься о детях!`);
break;
case age >=46 && age <=64:
document.write(`Живи и наслаждайся!`);
break;
case age >64:
document.write(`Ты пенсионер!`);
break;
}

aleksandrkhishchenko
Автор

Если что, можно превратить строковые значения, введённые в prompt, в числовые значения без участия parseInt.
Для этого можно перед prompt поставить +.
Var x=+prompt ();
или Let x=+prompt();
Таким образом + превращает введённое значение в число (если это не текст, конечно:) )

vladk
Автор

Я так понимаю, case - это варианты ответа для свитч, а default срабатывает, когда ни один из case не подходит.

ГлебШелковников
Автор

var name = prompt('Введите ваше имя');
switch(name){
case Andrei Stepanov');
break;
case 'dima': document.write('Hello Dima Sultanov');
break;
case 'oleg': document.write('Hello Oleg Nechiporenko');
break;
default: document.write('Нетю');

feterson
Автор

тезка, режешь.
не слаживаться, а складываться.Уроки хорошие)спасибо.

АндрейА-ъу
Автор

делить умножать отнимать и додавать), слаживать))

АлексейАрапов-зя
Автор

можно сделать проще:
let a = prompt('введите 1 число')
let b = prompt('введите 2 число')
let c = prompt('введите знак')

switch (c){
case '*' : alert (a * b)

case '/' : alert (a/b)

case '+' : alert (Number(a) + Number(b))

case '-' : alert (a - b)

default : alert ('error')
}

ohnocringe
Автор

10:12 можно для примера ввести 100. На что влияет эта 100 и можно ли её туда не вносить?

fillipmauntbetten
Автор

var first = prompt("Введите первое число") ;
var second = prompt("Введите второе число") ;
var third = prompt("Напишите 1 чтобы выполнить действие +, напишите 2 чтобы выполнить действие -, напишите 3 чтобы выполнить действие ×, напишите 4 чтобы выполнить действие ÷") ;

var first = parseInt(first);
var second = parseInt(second) ;

switch(third) {
case "1" : alert(first + second) ;
break;
case "2" : alert(first - second) ;
break;
case "3" : alert(first × second);
break;
case "4" : alert(first ÷ second);
break;
default : alert("there is no such a comand");
}

newview
Автор

дз по калькулятору
var x = prompt('Введите первое число');
var y = prompt('Введите второе число');
var z = prompt('Введите 1 чтобы сработал знак +, 2 чтобы -, 3 чтобы *, 4 чтобы /');

var x = parseInt(x);
var y = parseInt(y);

var result;

if(z == 1) {
result = x+y;
}
else if(z == 2) {
result = x-y;
}
else if(z == 3) {
result = x*y;
}
else if(z == 4) {
result = x/y;
};
alert(result);

HorbachenkoVlad
Автор

15:55 Почему когда обьявляешь через let y = parseInt(y); то выдает ошибку?

ЭльдарИшмуханбетов-бе
Автор

Андрей привет! Подскажи плз, почему если я делаю то же самое, но использую Let вместо var, мне выдается ошибка на строчках
var x = parseInt(x);
var y = parseInt(y);

denpulokas
Автор

var x = prompt("введите число", 0);
var y = prompt("введите число", 0);
var z = prompt("введите 1, чтобы получить +, 2 чтобы -, 3 чтобы * и 4 чтобы /");

var x = parseInt(x);
var y = parseInt(y);

var result;
if(z==1){
result(x+y);
}else if(z==2){
result(x-y);
}else if(z==3){
result(x*y);
}else if(z==4){
result(x/y);
}else{
result=("введите правильную команду");
}
alert(result);

GarikSuroviy
Автор

решение ДЗ -


var x = prompt("Введите первое число");
var z = prompt("Введите 1 для сложения, 2 для вычитания, 3 для умножения, 4 для деления");
var y = prompt("Введите второе число");
var x = parseInt(x);
var y = parseInt(y);
var result;

if(z == 1){
result = x + y;
}
if(z == 2){
result = x - y;
}
if(z == 3){
result = x * y;
}
if(z == 4){
result = x / y;
}
else if(z >= 5){
document.write("Указана неверная функция, ");
}
document.write(result);

dimaso
Автор

А почему 1, 2, 3, 4 а не +, -, *, /?

arkadii
Автор

Если переменная z -это числовой тип данных (1, 2, 3, 4), то как срабатывает строковый case '1' ??

miliba
Автор

Привет!
Андрей, помоги пожалуйста, в калькуляторе при сложении числа не суммируются, а складывает как строки.?

КлимФокин-ый
Автор

У меня в калькуляторе, при сложении числа не складываются а компонуются.

kekosplay
Автор

у меня не работает код в калькуляторе, итоговое число не вызывается

ЕвгенийШершов