شبيبة تعليمي

شبيبة المنزل مقدمة شبيبة شبيبة إلى أين إخراج JS بيانات شبيبة بناء جملة JS تعليقات JS متغيرات JS JS Let شبيبة كونست مشغلي JS شبيبة الحساب احالة JS أنواع بيانات JS وظائف JS كائنات JS أحداث شبيبة سلاسل شبيبة طرق سلسلة JS بحث سلسلة JS JS String Templates أرقام شبيبة طرق عدد JS صفيفات JS طرق صفيف JS ترتيب صفيف JS تكرار صفيف JS JS Array Const تواريخ شبيبة تنسيقات التاريخ JS طرق الحصول على تاريخ JS طرق تعيين تاريخ JS شبيبة الرياضيات شبيبة عشوائية شبيبة منطقية مقارنات شبيبة شروط JS مفتاح JS JS Loop For JS Loop For In. شبيبة حلقة JS لـ Of شبيبة حلقة بينما شبيبة استراحة شبيبة تكرارات مجموعات JS خرائط شبيبة شبيبة تايبوف JS نوع التحويل شبيبة Bitwise JS RegExp أخطاء JS شبيبة النطاق رفع JS وضع JS الصارم شبيبة هذه الكلمة دالة سهم JS فئات JS شبيبة شبيبة تصحيح أخطاء JS دليل أسلوب JS أفضل ممارسات JS أخطاء JS أداء JS شبيبة الكلمات المحجوزة

إصدارات JS

إصدارات JS JS 2009 (ES5) شبيبة 2015 (ES6) شبيبة 2016 شبيبة 2017 شبيبة 2018 شبيبة آي إي / إيدج تاريخ شبيبة

كائنات JS

تعريفات الكائن خصائص الموضوع طرق الكائن عرض الكائن موصلي الكائنات منشئو الكائنات نماذج الكائن كائن تكرارات مجموعات الكائن خرائط الكائن مرجع الكائن

وظائف JS

تعريفات الوظائف معلمات الوظيفة استدعاء الوظيفة استدعاء الوظيفة تطبيق الوظيفة عمليات إغلاق الوظائف

فئات JS

مقدمة عن الفصل الوراثة الطبقية فئة ثابتة

شبيبة آسينك

عمليات الاسترجاعات JS شبيبة غير متزامن وعود شبيبة شبيبة Async / انتظار

JS HTML DOM

مقدمة DOM طرق DOM مستند DOM عناصر DOM DOM HTML نماذج DOM DOM CSS الرسوم المتحركة DOM أحداث DOM مستمع أحداث DOM التنقل في DOM عقد DOM مجموعات DOM قوائم عقدة DOM

متصفح JS BOM

نافذة JS شاشة JS موقع JS تاريخ شبيبة شبيبة ملاح تنبيه منبثق لـ JS توقيت شبيبة ملفات تعريف الارتباط JS

JS Web APIs

مقدمة واجهة برمجة تطبيقات الويب واجهة برمجة تطبيقات نماذج الويب واجهة برمجة تطبيقات سجل الويب واجهة برمجة تطبيقات تخزين الويب Web Worker API واجهة برمجة تطبيقات جلب الويب واجهة برمجة تطبيقات تحديد الموقع الجغرافي على الويب

شبيبة أجاكس

مقدمة أجاكس أجاكس XMLHttp طلب AJAX استجابة AJAX ملف AJAX XML أجاكس بي إتش بي أجاكس آسيا والمحيط الهادئ قاعدة بيانات أجاكس تطبيقات أجاكس أمثلة AJAX

شبيبة شبيبة

مقدمة JSON بناء جملة JSON JSON مقابل XML أنواع بيانات JSON تحليل JSON تنسيق JSON كائنات JSON صفائف JSON خادم JSON JSON PHP JSON HTML جسون جسونب

JS مقابل jQuery

محددات jQuery jQuery HTML jQuery CSS jQuery DOM

شبيبة الرسومات

شبيبة الرسومات قماش شبيبة شبيبة بلوتلي JS Chart.js مخطط جوجل JS شبيبة D3.js

أمثلة JS

أمثلة JS JS HTML DOM إدخال JS HTML كائنات JS HTML أحداث HTML متصفح JS محرر JS تمارين شبيبة شبيبة مسابقة شهادة JS

مراجع JS

كائنات جافا سكريبت كائنات HTML DOM


بيان تبديل جافا سكريبت


يتم switchاستخدام البيان لأداء إجراءات مختلفة بناءً على ظروف مختلفة.


بيان تبديل JavaScript

استخدم switchالعبارة لتحديد واحدة من العديد من كتل التعليمات البرمجية المراد تنفيذها.

بناء الجملة

switch(expression) {
  case x:
    // code block
    break;
  case y:
    // code block
    break;
  default:
    // code block
}

هذه هي الطريقة التي يعمل بها:

  • يتم تقييم تعبير التبديل مرة واحدة.
  • تتم مقارنة قيمة التعبير مع قيم كل حالة.
  • إذا كان هناك تطابق ، فسيتم تنفيذ كتلة التعليمات البرمجية المرتبطة.
  • إذا لم يكن هناك تطابق ، فسيتم تنفيذ كتلة التعليمات البرمجية الافتراضية.

مثال

تُرجع getDay()الطريقة يوم الأسبوع كرقم بين 0 و 6.

(الأحد = 0 ، الاثنين = 1 ، الثلاثاء = 2 ..)

يستخدم هذا المثال رقم أيام الأسبوع لحساب اسم يوم الأسبوع:

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";
}

ستكون نتيجة اليوم:

Sunday


الكلمة الرئيسية الفاصل

عندما تصل JavaScript إلى break كلمة رئيسية ، فإنها تكسر كتلة التبديل.

سيؤدي هذا إلى إيقاف التنفيذ داخل كتلة التبديل.

ليس من الضروري كسر الحالة الأخيرة في كتلة التبديل. الكتلة تنكسر (تنتهي) هناك على أي حال.

ملاحظة: إذا حذفت تعليمة break ، فسيتم تنفيذ الحالة التالية حتى إذا لم يتطابق التقييم مع الحالة.


الكلمة الرئيسية الافتراضية

defaultتحدد الكلمة الرئيسية الرمز المطلوب تشغيله في حالة عدم وجود مطابقة لحالة الأحرف :

مثال

تُرجع getDay()الطريقة يوم الأسبوع كرقم بين 0 و 6.

إذا لم يكن اليوم السبت (6) ولا الأحد (0) ، فاكتب رسالة افتراضية:

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";
}

ستكون نتيجة النص:

Today is Sunday

لا يجب defaultأن تكون الحالة هي الحالة الأخيرة في كتلة التبديل:

مثال

switch (new Date().getDay()) {
  default:
    text = "Looking forward to the Weekend";
    break;
  case 6:
    text = "Today is Saturday";
    break;
  case 0:
    text = "Today is Sunday";
}

إذا defaultلم تكن الحالة الأخيرة في مجموعة التبديل ، فتذكر إنهاء الحالة الافتراضية بفاصل.


كتل التعليمات البرمجية المشتركة

ستحتاج أحيانًا إلى حالات تبديل مختلفة تستخدم نفس الرمز.

في هذا المثال ، الحالة 4 و 5 يشتركان في نفس كتلة الكود ، و 0 و 6 يشتركان في كتلة أخرى:

مثال

switch (new Date().getDay()) {
  case 4:
  case 5:
    text = "Soon it is Weekend";
    break;
  case 0:
  case 6:
    text = "It is Weekend";
    break;
  default:
    text = "Looking forward to the Weekend";
}

تبديل التفاصيل

إذا تطابق العديد من الحالات مع قيمة حالة ، يتم تحديد الحالة الأولى .

إذا لم يتم العثور على حالات مطابقة ، يستمر البرنامج في التسمية الافتراضية .

إذا لم يتم العثور على تسمية افتراضية ، يستمر البرنامج في العبارة (العبارات) بعد التبديل .


مقارنة صارمة

تستخدم حالات التبديل مقارنة صارمة (===).

يجب أن تكون القيم من نفس النوع لمطابقتها.

لا يمكن أن تكون المقارنة الصارمة صحيحة إلا إذا كانت المعاملات من نفس النوع.

في هذا المثال لن يكون هناك تطابق لـ x:

مثال

let x = "0";
switch (x) {
  case 0:
    text = "Off";
    break;
  case 1:
    text = "On";
    break;
  default:
    text = "No value found";
}

اختبر نفسك مع التمارين

ممارسه الرياضه:

قم بإنشاء switchعبارة لتنبيه "Hello" إذا كانت fruits"banana" ، و "Welcome" إذا كانت fruits"apple".

(fruits) {
  "Banana":
    alert("Hello")
    break;
  "Apple":
    alert("Welcome")
    break;    
}