بيان تبديل جافا سكريبت
مثال
نفِّذ كتلة من التعليمات البرمجية بناءً على إدخال المستخدم:
var text;
var fruits = document.getElementById("myInput").value;
switch(fruits) {
case "Banana":
text = "Banana is good!";
break;
case "Orange":
text = "I am not a fan of orange.";
break;
case "Apple":
text = "How you like them apples?";
break;
default:
text = "I have never heard of that fruit...";
}
المزيد من الأمثلة "جربها بنفسك" أدناه.
التعريف والاستخدام
بيان التبديل ينفذ كتلة من التعليمات البرمجية بناءً على الحالات المختلفة.
عبارة التبديل هي جزء من عبارات "الشرطية" لجافا سكريبت ، والتي تُستخدم لأداء إجراءات مختلفة بناءً على شروط مختلفة. استخدم مفتاح التبديل لتحديد واحدة من العديد من مجموعات التعليمات البرمجية المراد تنفيذها. هذا هو الحل الأمثل لعبارات if / else طويلة ومتداخلة .
تقوم جملة التبديل بتقييم التعبير. ثم تتم مقارنة قيمة التعبير مع قيم كل حالة في الهيكل. إذا كان هناك تطابق ، فسيتم تنفيذ كتلة التعليمات البرمجية المرتبطة.
غالبًا ما يتم استخدام عبارة التبديل مع فاصل أو كلمة أساسية افتراضية (أو كليهما). كلاهما اختياري:
كسر الكلمة الأساسية كسر من كتلة التبديل. سيؤدي هذا إلى إيقاف تنفيذ المزيد من تنفيذ التعليمات البرمجية و / أو اختبار الحالة داخل الكتلة. إذا تم حذف الفاصل ، يتم تنفيذ كتلة التعليمات البرمجية التالية في عبارة التبديل.
تحدد الكلمة الرئيسية الافتراضية بعض التعليمات البرمجية ليتم تشغيلها إذا لم يكن هناك تطابق لحالة الأحرف. يمكن أن يكون هناك كلمة رئيسية افتراضية واحدة فقط في مفتاح التحويل. على الرغم من أن هذا اختياري ، إلا أنه يوصى باستخدامه ، لأنه يعتني بالحالات غير المتوقعة.
بناء الجملة
switch(expression) {
case n:
code block
break;
case n:
code block
break;
default:
default code block
}
قيمه المعامل
Parameter | Description |
---|---|
expression | Required. Specifies an expression to be evaluated. The expression is evaluated once. The value of the expression is compared with the values of each case labels in the structure. If there is a match, the associated block of code is executed |
مزيد من الأمثلة
مثال
استخدم رقم اليوم من أيام الأسبوع لحساب اسم يوم الأسبوع (الأحد = 0 ، الاثنين = 1 ، الثلاثاء = 2 ، ...):
var day;
switch (new Date().getDay()) {
case 0:
day = "Sunday";
break;
case 1:
day = "Monday";
break;
case 2:
day = "Tuesday";
break;
case 3:
day = "Wednesday";
break;
case 4:
day = "Thursday";
break;
case 5:
day = "Friday";
break;
case 6:
day = "Saturday";
break;
default:
day = "Unknown Day";
}
مثال
إذا لم يكن اليوم السبت ولا الأحد ، فاكتب رسالة افتراضية:
var text;
switch (new Date().getDay()) {
case 6:
text = "Today is Saturday";
break;
case 0:
text = "Today is Sunday";
break;
default:
text = "Looking forward to the Weekend";
}
مثال
في بعض الأحيان ، قد ترغب في أن تستخدم الحالات المختلفة نفس الرمز ، أو أن تسقط في الإعداد الافتراضي الشائع.
لاحظ أنه في هذا المثال ، تشترك الحالات في نفس كتلة التعليمات البرمجية ، وأن الحالة الافتراضية لا يجب أن تكون الحالة الأخيرة في كتلة التبديل (ومع ذلك ، إذا لم تكن الحالة الافتراضية هي الحالة الأخيرة في كتلة التبديل ، فتذكر إنهاءها مع فاصل).
var text;
switch (new Date().getDay()) {
case 1:
case 2:
case 3:
default:
text = "Looking forward to the Weekend";
break;
case 4:
case 5:
text = "Soon it is Weekend";
break;
case 0:
case 6:
text = "It is Weekend";
}
مثال
استخدام عبارة التبديل لتنفيذ كتلة من التعليمات البرمجية بناءً على إدخال المستخدم ، من مربع المطالبة:
var text;
var favDrink = prompt("What's your favorite cocktail drink?");
switch(favDrink) {
case "Martini":
text = "Excellent choice! Martini is good for your soul.";
break;
case "Daiquiri":
text = "Daiquiri is my favorite too!";
break;
case "Cosmopolitan":
text = "Really? Are you sure the Cosmopolitan is your favorite?";
break;
default:
text = "I have never heard of that one..";
}
الصفحات ذات الصلة
دروس JavaScript: JavaScript If ... Else Statements
دروس JavaScript: بيان تبديل JavaScript
مرجع JavaScript: بيان JavaScript if / else
مرجع JavaScript: بيان كسر JavaScript
دعم المتصفح
switch
هي إحدى ميزات ECMAScript1 (ES1).
ES1 (JavaScript 1997) مدعوم بالكامل في جميع المتصفحات:
Chrome | IE | Edge | Firefox | Safari | Opera |
Yes | Yes | Yes | Yes | Yes | Yes |