وكما يلي نحدد تعداد الأسبوع:
انسخ رمز الكود كما يلي:
إذا(typeof WeekDay == "غير محدد"){
var WeekDay = {};
WeekDay.Sunday = 0;
WeekDay.Monday = 1؛
WeekDay.Tuesday = 2؛
WeekDay.Wedesay = 3;
WeekDay.Thursday = 4؛
WeekDay.Friday = 5؛
WeekDay.Saturday = 6؛
}
الاختبار هو كما يلي:
تنبيه (WeekDay.Monday)؛ // -----> الإخراج: 1
وبطبيعة الحال، لدينا طريقة أكثر سهولة. بأخذ تعريف نوع عقدة مستند DOM كمثال، يكون التعريف كما يلي:
انسخ رمز الكود كما يلي:
إذا (نوع العقدة == "غير محدد"){
عقدة فار = {
العنصر_العقدة: 1،
السمة_العقدة: 2،
عقدة النص: 3،
CDATA_SECTION_NODE: 4،
ENTITY_REFERENCE_NODE: 5،
ENTITY_NODE: 6،
PROCESSING_INSTRUCTION_NODE: 7،
تعليق_العقدة: 8،
الوثيقة_العقدة: 9،
DOCUMENT_TYPE_NODE: 10،
DOCUMENT_FRAGEMENT_NODE: 11،
NOTATION_NODE: 12
}
}
الاختبار هو كما يلي:
انسخ رمز الكود كما يلي:
تنبيه (document.nodeType == Node.DOCUMENT_NODE)؛ // -----> الإخراج: صحيح
لاحظ أنه يمكن استخدام تعريف العقدة أعلاه لتصحيح فشل IE في دعم ثوابت نوع عقدة DOM (جميع المتصفحات السائدة الأخرى تدعمها).
على غرار اللغات المشابهة للغة C، فإن قيم السمات المقابلة للتعدادات في المثالين أعلاه كلها أعداد صحيحة. ربما تتساءل هل يمكن تعريفه كنوع آخر؟ للإجابة على هذا السؤال، يجب علينا أولا أن نعرف مبدأ تنفيذ التعداد لدينا. كما ذكرنا سابقًا، يتم تنفيذ ذلك باستخدام JSON، ويمكن لـ JSON استخدام أي نوع من القيمة! لذلك، يمكن أن تكون التعدادات في JS أي نوع من القيمة. ما يلي يأخذ نوع السلسلة كمثال:
انسخ رمز الكود كما يلي:
إذا (نوع اللون == "غير محدد"){
فار اللون = {
اللون 1: "أحمر"،
اللون 2: "أخضر"،
اللون 3: "أبيض"،
اللون 4: "أسود"
}
}
الاختبار هو كما يلي:
تنبيه (Color.Color1)؛ // -----> الإخراج: أحمر
قم بتعريف تعداد PersonList بنوع أكثر تعقيدًا كما يلي:
انسخ رمز الكود كما يلي:
إذا (نوع قائمة الأشخاص == "غير محدد"){
فار قائمة الأشخاص = {
تشانغسان: {
المعرف: 1،
الاسم: "زانغ سان"،
الجنس : "رجل"
},
ليسي: {
المعرف: 2،
الاسم: "ليسي"،
الجنس : "امرأة"
},
تشاو وو: {
المعرف: 3،
الاسم: تشاو وو،
الجنس : "رجل"
}
}
}
نتائج الاختبار هي كما يلي: