وظيفة جافا سكريبت لا يتم تنفيذ أي فحص على القيم المعلمة (الحجج).
Function Parameters و Arguments
في هذا البرنامج التعليمي في وقت سابق، تعلمت أن وظائف يمكن أن يكون parameters :
functionName ( parameter1, parameter2, parameter3 ) {
code to be executed
}
Function parameters هي أسماء المدرجة في تعريف الدالة.
Function arguments هي القيم الحقيقية التي تم تمريرها إلى (واستقبل من قبل) وظيفة.
قوانين المعلمة
تعريفات وظيفة جافا سكريبت لا تحدد أنواع البيانات للمعلمات.
وظائف جافا سكريبت لا يؤدون نوع التدقيق على الوسيطات التي تم تمريرها.
وظائف جافا سكريبت لا تحقق عدد من الحجج الواردة.
افتراضيات المعلمة
إذا كان يتم استدعاء دالة مع الحجج المفقودة (أقل من المعلن)، يتم تعيين قيم مفقودة ل: غير محدد
أحيانا هذا هو مقبول، ولكن في بعض الأحيان أنه من الأفضل أن تعيين قيمة افتراضية للمعلمة:
إذا كان يتم استدعاء دالة مع العديد من الوسائط (أكثر من المعلنة)، وهذه الحجج يمكن الوصول باستخدام كائن الحجج.
كائن وسيطات
وظائف جافا سكريبت لديها المدمج في كائن يسمى الكائن الحجج.
الكائن حجة يحتوي على مجموعة من الحجج المستخدمة عندما تم استدعاء الدالة (الاحتجاج).
وبهذه الطريقة يمكنك ببساطة استخدام وظيفة العثور على (على سبيل المثال) أعلى قيمة في قائمة من الأرقام:
مثال
x = findMax(1, 123, 500, 115, 44, 88);
function findMax() {
var i;
var max = -Infinity;
for (i = 0; i < arguments.length; i++) {
if (arguments[i] > max) {
max = arguments[i];
}
}
return max;
}
انها محاولة لنفسك » أو إنشاء دالة لتلخيص كل قيم الإدخال:
مثال
x = sumAll(1, 123, 500, 115, 44, 88);
function sumAll() {
var i, sum = 0;
for (i = 0; i < arguments.length; i++) {
sum += arguments[i];
}
return sum;
}
انها محاولة لنفسك » يتم تمرير الوسائط حسب القيمة
المعلمات، في استدعاء دالة، هي حجج الدالة.
يتم تمرير الحجج جافا سكريبت من حيث القيمة: وظيفة يحصل فقط إلى معرفة القيم، وليس المواقع حجة ل.
إذا تغير وظيفة قيمة حجة، فإنه لا يغير القيمة الأصلية المعلمة.
تغييرات على الحجج ليست واضحة (تعكس) خارج الدالة.
يتم تمرير الكائنات حسب المرجع
في جافا سكريبت، مراجع الكائنات هي القيم.
وبسبب هذا، سوف تتصرف الأشياء كما هي مرت من قبل المرجع:
إذا تغير وظيفة خاصية كائن، فإنه يغير القيمة الأصلية.
التغييرات في الاعتراض خصائص واضحة (تعكس) خارج الدالة.