Câu lệnh switch
đánh giá một biểu thức và thực thi phần thân tương ứng khớp với kết quả của biểu thức
Cú pháp của câu lệnh switch
là
switch[variable/expression] {
case value1:
// body of case 1
break;
case value2:
// body of case 2
break;
case valueN:
// body of case N
break;
default:
// body of default
}
Câu lệnh switch
đánh giá một biến/biểu thức bên trong dấu ngoặc đơn
// program using switch statement
let a = 2;
switch [a] {
case 1:
a = 'one';
break;
case 2:
a = 'two';
break;
default:
a = 'not found';
break;
}
console.log[`The value is ${a}`];
3- Nếu kết quả của biểu thức bằng
4, phần thân của nó được thực thi// program using switch statement let a = 2; switch [a] { case 1: a = 'one'; break; case 2: a = 'two'; break; default: a = 'not found'; break; } console.log[`The value is ${a}`];
- Nếu kết quả của biểu thức bằng
5, phần thân của nó được thực thi// program using switch statement let a = 2; switch [a] { case 1: a = 'one'; break; case 2: a = 'two'; break; default: a = 'not found'; break; } console.log[`The value is ${a}`];
- Quá trình này tiếp tục. Nếu không có trường hợp khớp, phần thân
6 sẽ thực thi// program using switch statement let a = 2; switch [a] { case 1: a = 'one'; break; case 2: a = 'two'; break; default: a = 'not found'; break; } console.log[`The value is ${a}`];
ghi chú
- Câu lệnh
7 là tùy chọn. Nếu gặp câu lệnh break thì câu lệnh switch kết thúc// program using switch statement let a = 2; switch [a] { case 1: a = 'one'; break; case 2: a = 'two'; break; default: a = 'not found'; break; } console.log[`The value is ${a}`];
- Nếu câu lệnh
7 không được sử dụng, các trường hợp sau trường hợp phù hợp cũng được thực thi// program using switch statement let a = 2; switch [a] { case 1: a = 'one'; break; case 2: a = 'two'; break; default: a = 'not found'; break; } console.log[`The value is ${a}`];
- Mệnh đề
6 cũng là tùy chọn// program using switch statement let a = 2; switch [a] { case 1: a = 'one'; break; case 2: a = 'two'; break; default: a = 'not found'; break; } console.log[`The value is ${a}`];
Sơ đồ chuyển đổi Tuyên bố
ví dụ 1. Chương trình đơn giản sử dụng câu lệnh switch
// program using switch statement
let a = 2;
switch [a] {
case 1:
a = 'one';
break;
case 2:
a = 'two';
break;
default:
a = 'not found';
break;
}
console.log[`The value is ${a}`];
đầu ra
The value is two.
Trong chương trình trên, một biểu thức
The value is two.0 được đánh giá bằng một câu lệnh
switch
- Kết quả của biểu thức được đánh giá bằng
The value is two.
2, kết quả làThe value is two.
3 - Sau đó, câu lệnh
switch
chuyển sang trường hợp thứ hai. Ở đây, kết quả của biểu thức khớp vớiThe value is two.
5. Vì vậy, giá trị là hai được hiển thị - Câu lệnh
7 kết thúc khối và luồng điều khiển của chương trình nhảy ra bên ngoài khối// program using switch statement let a = 2; switch [a] { case 1: a = 'one'; break; case 2: a = 'two'; break; default: a = 'not found'; break; } console.log[`The value is ${a}`];
switch
ví dụ 2. Loại Đang kiểm tra trong switch Tuyên bố
// program using switch statement
let a = 1;
switch [a] {
case "1":
a = 1;
break;
case 1:
a = 'one';
break;
case 2:
a = 'two';
break;
default:
a = 'not found';
break;
}
console.log[`The value is ${a}`];
đầu ra
The value is one.
Trong chương trình trên, một biểu thức
The value is two.8 được đánh giá bằng một câu lệnh
switch
- Trong JavaScript, câu lệnh switch kiểm tra giá trị một cách nghiêm ngặt. Vì vậy, kết quả của biểu thức không khớp với
0// program using switch statement let a = 1; switch [a] { case "1": a = 1; break; case 1: a = 'one'; break; case 2: a = 'two'; break; default: a = 'not found'; break; } console.log[`The value is ${a}`];
- Sau đó, câu lệnh
switch
chuyển sang trường hợp thứ hai. Ở đây, kết quả của biểu thức khớp vớiThe value is two.
2. Vì vậy, giá trị là một được hiển thị - Câu lệnh
7 kết thúc khối và luồng điều khiển của chương trình nhảy ra bên ngoài khối// program using switch statement let a = 2; switch [a] { case 1: a = 'one'; break; case 2: a = 'two'; break; default: a = 'not found'; break; } console.log[`The value is ${a}`];
switch
Ghi chú. Trong JavaScript, câu lệnh switch kiểm tra nghiêm ngặt các trường hợp [phải cùng kiểu dữ liệu] với kết quả của biểu thức. Lưu ý trong ví dụ trên, 1 không khớp với "1"
Hãy viết một chương trình để tạo một máy tính đơn giản với câu lệnh switch
ví dụ 3. Máy tính đơn giản
// program for a simple calculator
let result;
// take the operator input
const operator = prompt['Enter operator [ either +, -, * or / ]: '];
// take the operand input
const number1 = parseFloat[prompt['Enter first number: ']];
const number2 = parseFloat[prompt['Enter second number: ']];
switch[operator] {
case '+':
result = number1 + number2;
console.log[`${number1} + ${number2} = ${result}`];
break;
case '-':
result = number1 - number2;
console.log[`${number1} - ${number2} = ${result}`];
break;
case '*':
result = number1 * number2;
console.log[`${number1} * ${number2} = ${result}`];
break;
case '/':
result = number1 / number2;
console.log[`${number1} / ${number2} = ${result}`];
break;
default:
console.log['Invalid operator'];
break;
}
đầu ra
Enter operator: + Enter first number: 4 Enter second number: 5 4 + 5 = 9
Trong chương trình trên, người dùng được yêu cầu nhập +, -, * hoặc / và hai toán hạng. Sau đó, câu lệnh switch
thực thi các trường hợp dựa trên đầu vào của người dùng
Chuyển JavaScript với nhiều trường hợp
Trong câu lệnh chuyển đổi JavaScript, các trường hợp có thể được nhóm lại để chia sẻ cùng một mã
Ví dụ 4. chuyển đổi với nhiều trường hợp
// multiple case switch program
let fruit = 'apple';
switch[fruit] {
case 'apple':
case 'mango':
case 'pineapple':
console.log[`${fruit} is a fruit.`];
break;
default:
console.log[`${fruit} is not a fruit.`];
break;
}
đầu ra
apple is a fruit.
Trong chương trình trên, nhiều trường hợp được nhóm. Tất cả các trường hợp được nhóm chia sẻ cùng một mã
Nếu giá trị của biến fruit có giá trị
// program using switch statement
let a = 1;
switch [a] {
case "1":
a = 1;
break;
case 1:
a = 'one';
break;
case 2:
a = 'two';
break;
default:
a = 'not found';
break;
}
console.log[`The value is ${a}`];
7 hoặc // program using switch statement
let a = 1;
switch [a] {
case "1":
a = 1;
break;
case 1:
a = 'one';
break;
case 2:
a = 'two';
break;
default:
a = 'not found';
break;
}
console.log[`The value is ${a}`];
8, đầu ra sẽ giống nhau