Trong hướng dẫn này, bạn sẽ tìm hiểu về câu lệnh JavaScript switch với sự trợ giúp của các ví dụ.
Câu switch
lệnh JavaScript được sử dụng trong việc ra quyết định.
Câu switch
lệnh đánh giá một biểu thức và thực thi phần nội dung tương ứng phù hợp với kết quả của biểu thức.
Cú pháp của switch
câu lệnh 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 switch
lệnh đánh giá một biến / biểu thức bên trong dấu ngoặc đơn ()
.
Nếu kết quả của biểu thức bằng value1, phần thân của nó sẽ được thực thi.
Nếu kết quả của biểu thức bằng value2, phần thân của nó sẽ được thực thi.
Quá trình này tiếp tục. Nếu không có trường hợp phù hợp, phần thân mặc định sẽ thực thi.
Ghi chú:
Câu lệnh break là tùy chọn. Nếu gặp câu lệnh break, câu lệnh switch sẽ kết thúc.
Nếu câu lệnh break 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 hiện.
Mệnh đề mặc định cũng là tùy chọn.
Lưu đồ của câu lệnh switch
Lưu đồ của câu lệnh chuyển đổi JavaScript
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 a = 2
được đánh giá bằng một switch
câu lệnh.
- The expression’s result is evaluated with
case 1
which results infalse
. - Then the
switch
statement goes to the second case. Here, the expression’s result matches withcase 2
. So The value is two is displayed. - The
break
statement terminates the block and control flow of the program jumps to outside of theswitch
block.
Ví dụ 2: Gõ Kiểm tra trong Tuyên bố chuyển đổi
// 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 a = 1
được đánh giá bằng một switch
câu lệnh.
- In JavaScript, the switch statement checks the value strictly. So the expression’s result does not match with
case "1"
. - Then the
switch
statement goes to the second case. Here, the expressions’s result matches withcase 1
. So The value is one is displayed. - The
break
statement terminates the block and control flow of the program jumps to outside of theswitch
block.
Lưu ý : Trong JavaScript, câu lệnh switch sẽ 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. Chú ý 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 switch
câu lệnh.
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 đó, switch
câu lệnh thực thi các trường hợp dựa trên đầu vào của người dùng.
Chuyển đổi 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 lại. 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 trái cây có giá trị mango
hoặc pineapple
, đầu ra sẽ giống nhau.