المعاملات الافتراضية
جزء من قسم Fundamentals في رحلة JavaScript على Coddy — الدرس 50 من 77.
في البرمجة، من الشائع وجود دوال تحتوي فيها بعض المعلمات على قيم افتراضية. هذه هي القيم التي ستتخذها المعلمة إذا لم يتم توفير وسيط أثناء استدعاء الدالة. تجعل المعلمات الافتراضية الدوال أكثر مرونة وأسهل في الاستخدام.
لتعريف دالة بمعاملات افتراضية في JavaScript، تقوم بتعيين قيمة للمعامل في تعريف الدالة باستخدام عامل التشغيل =. إليك الصيغة الأساسية:
function functionName(param1, param2 = defaultValue2, param3 = defaultValue3) {
// جسم الدالة
// ...
}في هذا البناء، param2 و param3 لهما قيم افتراضية. إذا تم استدعاء الدالة دون توفير وسائط لهذه المعلمات، فستأخذ قيمها الافتراضية تلقائيًا.
إليك مثالاً:
function greet(name, greeting = "Hello") {
console.log(`${greeting}, ${name}!`);
}
greet("Alice"); // المخرج: Hello, Alice!
greet("Bob", "Hi"); // المخرج: Hi, Bob!في هذا المثال، تمتلك الدالة greet معاملين: name و greeting. المعامل greeting له قيمة افتراضية هي "Hello". عند استدعاء الدالة بوسيط واحد فقط، يأخذ greeting قيمته الافتراضية. وعند استدعائها بوسيطين، يقوم الوسيط الثاني بتجاوز القيمة الافتراضية.
يمكن أن تكون المعاملات الافتراضية أي تعبير صالح، بما في ذلك الأرقام، أو السلاسل النصية، أو القيم المنطقية، أو المصفوفات، أو الكائنات، أو حتى نتائج استدعاءات دوال أخرى.
ورقة مرجعية
تسمح المعلمات الافتراضية (Default parameters) للدوال بامتلاك قيم مسبقة التعيين عندما لا يتم توفير أي وسيط (argument). استخدم عامل التشغيل = في تعريف الدالة:
function functionName(param1, param2 = defaultValue) {
// جسم الدالة
}مثال:
function greet(name, greeting = "Hello") {
console.log(`${greeting}, ${name}!`);
}
greet("Alice"); // المخرج: Hello, Alice!
greet("Bob", "Hi"); // المخرج: Hi, Bob!يمكن أن تكون المعلمات الافتراضية أرقاماً، أو سلاسل نصية، أو قيماً منطقية، أو مصفوفات، أو كائنات، أو نتائج استدعاء دوال.
جرّب بنفسك
لا يتضمّن هذا الدرس تحدّيًا برمجيًا.
يتضمن هذا الدرس اختبارًا قصيرًا. ابدأ الدرس للإجابة عليه وتتبّع تقدمك.
جميع دروس Fundamentals
2المتغيرات
الأرقامString (النصوص)Boolean (القيم المنطقية)قواعد التسميةالمتغيرات الفارغةمراجعة - تهيئة المتغيراتالثوابت8الحلقات التكرارية
حلقة Forحلقة Whileجملة Breakجملة Continueمراجعة - Factorialحلقة Do Whileالحلقات المتداخلة3المعاملات - الجزء الأول
المعاملات الحسابيةمعامل باقي القسمة (Modulo)اختصارات العمليات الحسابيةمعاملات المقارنةالمساواة الصارمة مقابل العاديةمراجعة - العمليات الحسابية البسيطة6أساسيات الإدخال والإخراج (IO)
الإخراجالإخراج باستخدام المتغيراتتحويل أنواع البيانات - الجزء الأولتحويل أنواع البيانات - الجزء الثانيمراجعة - حتى 120مراجعة - صح أم خطأ9الدوال
تعريف دالةالوسائطالإرجاعمراجعة - دالة Sigmaتعبير الدالةالمعاملات الافتراضيةدوال السهممراجعة - دالة Validation