Switch در JavaScript
⭐️ دستور Switch در JavaScript
Switch یک ساختار کنترلی است که برای تصمیمگیری بین چند حالت مختلف استفاده میشود.
هر زمان که بخواهیم یک متغیر را با چند مقدار احتمالی مقایسه کنیم، Switch میتواند کد را بسیار خواناتر از if–elseهای پشتسرهم کند.
🔧 ساختار کلی Switch
switch (expression) {
case value1:
// code to execute
break;
case value2:
// code to execute
break;
default:
// code if no case matches
}
🔍 بخشهای کلیدی این ساختار
1. expression
عبارتی که مقدار آن قرار است بررسی شود.
مثلاً: یک عدد، رشته، متغیر، یا نتیجهٔ یک تابع.
2. case
هر case نشاندهندهٔ یک مقدار احتمالی برای expression است.
3. break
پس از اجرای کد هر case باید از break استفاده کنیم تا اجرای سایر caseها ادامه پیدا نکند.
اگر break نگذاریم، fall-through رخ میدهد و caseهای بعدی هم اجرا میشوند.
4. default
وقتی هیچ caseی با مقدار expression برابر نباشد، بخش default اجرا میشود.
✨ مثال ساده
let day = 2;
switch (day) {
case 1:
console.log(“Monday”);
break;
case 2:
console.log(“Tuesday”);
break;
case 3:
console.log(“Wednesday”);
break;
default:
console.log(“Unknown day”);
}
خروجی:
Tuesday
🧩 مثال کاربردیتر
مثال: تشخیص نوع میوه
let fruit = “apple”;
switch (fruit) {
case “banana”:
console.log(“Yellow fruit”);
break;
case “apple”:
console.log(“Red or green fruit”);
break;
case “orange”:
console.log(“Orange fruit”);
break;
default:
console.log(“Unknown fruit”);
}
⚠ مفهوم مهم: Fall-Through
اگر break نگذاریم، اجرای caseهای بعدی بدون چک شدن شرط ادامه پیدا میکند.
let x = 1;
switch (x) {
case 1:
console.log(“One”);
case 2:
console.log(“Two”);
case 3:
console.log(“Three”);
}
خروجی:
Two
Three
گاهی عمداً از این ویژگی استفاده میشود؛ مثلاً وقتی چند case خروجی یکسان دارند:
let color = “red”;
switch (color) {
case “red”:
case “blue”:
case “green”:
console.log(“Primary color”);
break;
default:
console.log(“Other color”);
}
🌟 مثال جالب: استفاده از Switch برای شرایط محدودهای
اگرچه Switch برای مقایسهٔ مستقیم مقدارهاست، ولی میتوان با ترفند مقدار true آن را به حالت شرطی تبدیل کرد:
let score = 85;
switch (true) {
case score >= 90:
console.log(“A”);
break;
case score >= 80:
console.log(“B”);
break;
case score >= 70:
console.log(“C”);
break;
default:
console.log(“F”);
}
🧠 خلاصه
-
Switch برای مقایسهٔ یک مقدار با حالتهای مختلف استفاده میشود.
-
هر case باید در پایان از break استفاده کند، مگر اینکه نیاز به fall-through داشته باشیم.
-
default مشابه else است.
-
Switch میتواند کدهای انتخابی را تمیز و قابلفهم کند، مخصوصاً وقتی تعداد گزینهها زیاد باشد.
دیدگاهتان را بنویسید