وظائف JavaScript
- الصفحة السابقة JS Data Types
- الصفحة التالية JS Object
تتم تصميم الدوال في جافا سكريبت لتوليد قطع من الكود تهدف إلى تنفيذ مهام محددة.
تتم تنفيذ الدوال في جافا سكريبت عند استدعائها بواسطة كود آخر.
مثال
function myFunction(p1, p2) { return p1 * p2; // تعود الدالة إلى نتائج ضرب p1 و p2 }
نص الدالة في جافا سكريبت
تتميز الدوال في جافا سكريبت بـ function
يتم تعريفها باستخدام الكلمة المفتاحية، يتبعهااسم الدالةوالأقواس ().
اسم الدالة يمكن أن يحتوي على أحرف، أرقام، شرطية ورمز الدولار (بنفس الشروط التي تنطبق على اسم المتغير).
يمكن استخدام الأقواس الدائرية لاستيعاب المعلمات المفصولة بالكومي
(المعلمات 1, المعلمات 2, ...)
يتم وضع الكود الذي سيتم تنفيذه من قبل الدالة داخل الأقواس:{}
اسم الدالة(المعلمات 1, المعلمات 2, المعلمات 3) { الكود الذي سيتم تنفيذه }
معلمات الدالة (Function parameters)هي الأسماء المدرجة في تعريف الدالة.
معلمات الدالة (Function arguments)هي الحقيقة التي تتلقاها الدالة عند استدعائها.القيمة.
في الدالة، تكون المعلمات متغيرات محلية.
في لغات البرمجة الأخرى، الدالة تشبه البرنامج (Procedure) أو البرنامج الفرعي (Subroutine).
استدعاء الدالة
سيتم تنفيذ الكود داخل الدالة عند استدعائها بواسطة كود آخر:
- عندما يحدث الحدث (عندما يضغط المستخدم على الزر)
- عند استدعاء كود JavaScript
- التلقائي (الاستدعاء الذاتي)
سوف تتعلم المزيد عن استدعاء الدوال في هذا الدليل.
العودة الدالة
عندما يصل JavaScript إلى return
الجملة، وتتوقف الدالة عن التنفيذ.
إذا تم استدعاء الدالة بواسطة جملة، سيقوم JavaScript بالعودة إلى تنفيذ الكود بعد جملة الاستدعاء.
عادة ما يحدد الدالةالقيمة العودةهذا القيمة العودة سيتم إرجاعها إلى المطلوب:
مثال
حساب المنتج لعددين وإرجاع النتيجة:
var x = myFunction(7, 8); // استدعاء الدالة، يتم تعيين القيمة المعدة إلى x function myFunction(a, b) { return a * b; // عودة المنتج من a و b }
النتيجة لـ x ستكون:
56
لماذا استخدام الدوال؟
يمكنك تكرار استخدام الكود: يمكنك استخدام الكود مرة واحدة فقط وتكرار استخدامه عدة مرات.
يمكنك إرسال متغيرات مختلفة إلى نفس الدالة للحصول على نتائج مختلفة.
مثال
تحويل درجة الحرارة الفارنهايت إلى درجة الحرارة المئوية:
function toCelsius(fahrenheit) { return (5/9) * (fahrenheit-32); } document.getElementById("demo").innerHTML = toCelsius(77);
استخدام عمودية () لاستدعاء الدالة
استخدام المثال أعلاه،toCelsius
المراد هو دالة كائن، بينما toCelsius()
المراد هو نتيجة الدالة.
مثال
الوصول إلى دالة بدون () سيقوم بعودة تعريف الدالة:
function toCelsius(fahrenheit) { return (5/9) * (fahrenheit-32); } document.getElementById("demo").innerHTML = toCelsius;
الدالة كقيمة متغير
يستخدم الدالة بنفس الطريقة التي تستخدم فيها المتغيرات، في جميع أنواع المعادلات والتعريفات والحسابات.
مثال
استخدام المتغيرات لتحديد قيمة الدالة:
var x = toCelsius(77); var text = "The temperature is " + x + " Celsius";
يمكنك استخدام الدالة كقيمة متغير مباشرة:
var text = "The temperature is " + toCelsius(77) + " Celsius";
سوف تتعلم المزيد عن الدوال في هذا الدليل.
المتغيرات المحلية
المتغيرات المعلنة داخل دالة JavaScript تصبح جزءًا منالمتغيرات المحلية.
المتغيرات المحلية يمكن الوصول إليها فقط داخل الدالة.
مثال
// لا يمكن استخدام carName هنا function myFunction() { var carName = "Volvo"; // يمكن استخدام carName هنا } // لا يمكن استخدام carName هنا
بما أن المتغيرات المحلية يمكن تمييزها فقط من قبل وظيفتها، يمكن استخدام نفس الاسم للمتغيرات في وظائف مختلفة.
تُنشأ المتغيرات المحلية عند بدء العملية، وتُزال عند إكمالها.
كتب دراسية
للحصول على معلومات إضافية حول وظائف JavaScriptلمعرفة المزيد، يرجى قراءة المعلومات المتعلقة بها في دليل متقدم JavaScript:
- مقدمة إلى وظائف ECMAScript
- هذه الفقرة تشرح مفهوم الوظيفة، وكيفية إعلان وتشغيل الوظيفة في ECMAScript، وكيفية العودة بالقيمة من الوظيفة.
- مفهوم arguments في ECMAScript
- هذه الفقرة تقدم شرحًا للمفهوم الأساسي للوظيفة، وتشرح كيفية استخدام خاصية length لقياس عدد المعلمات في الوظيفة، وكيفية محاكاة تحميل وظائف متعددة.
- مفهوم Object Function في ECMAScript (فئة)
- هذه الفقرة تشرح كيفية إنشاء وظائف باستخدام فئة Function، وتقدم شرحًا للخصائص والطرق لـ Object Function.
- مفهوم closure في ECMAScript
- هذه الفقرة تشرح مفهوم closure، وتعرض لك مثالين بسيطين وغير بسيط.
- الصفحة السابقة JS Data Types
- الصفحة التالية JS Object