🧠 الدوال في JavaScript – الجزء الثاني: المعاملات و"الرجوع"!
👋 أهلًا من جديد أيها المبرمج الصغير!
في الجزء الأول من الدرس، تعلمنا شو هي الدوال (Functions) وكيف بنستخدمها لتنظيم الكود وتكراره. واليوم، رح ننتقل للمرحلة اللي بعدها! 🚀
بدنا نتعلم كيف نحط "معلومات" داخل الدالة، وكيف تخبرنا الدالة بنتيجة معينة. يعني: المعاملات (Parameters) والقيمة المرجعة (Return)!
📦 شو يعني معاملات (Parameters)؟

تخيل إن عندك دالة بتقول "مرحبًا" لشخص، لكن كل مرة بدك تغير الاسم. بدل ما تكتب دالة جديدة لكل اسم، بنستخدم "معامل" نرسله للدالة! 🎁
مثال:
function sayHello(name) {
console.log("أهلًا، " + name + "!");
}
sayHello("سارة");
sayHello("أحمد");
✨ النتيجة:
- أهلًا، سارة!
- أهلًا، أحمد!
🔹 name
هون هو المعامل. بنعطيه قيمة لما ننادي الدالة.
📚 أكثر من معامل؟ نعم!
تقدر ترسل أكثر من معلومة للدالة. مثلًا، دالة تجمع رقمين:
function addNumbers(a, b) {
console.log("المجموع هو: " + (a + b));
}
addNumbers(3, 5);
addNumbers(10, 7);
🧮 النتيجة:
- المجموع هو: 8
- المجموع هو: 17
🔢 تقدر تسمي المعاملات بأي اسم، لكن الأفضل تستخدم أسماء واضحة.
🔁 شو يعني return
؟
أحيانًا، بدك الدالة ترجعلك نتيجة، مش بس تطبعها. هون بنستخدم الكلمة return
. 🎯
مثال:
function multiply(a, b) {
return a * b;
}
let result = multiply(4, 5);
console.log("النتيجة: " + result);
📦 شو صار هون؟
- الدالة
multiply
ضربت الرقمين. - رجّعت النتيجة باستخدام
return
. - خزّنا النتيجة في متغير اسمه
result
.
🔥 هيك بنقدر نستخدم الناتج لاحقًا في اللعبة أو البرنامج!
🧪 تمرين عملي!
اكتب دالة ترجع لنا اسم اللاعب الكامل:
function getFullName(firstName, lastName) {
return firstName + " " + lastName;
}
let fullName = getFullName("ليلى", "الخالدي");
console.log("الاسم الكامل هو: " + fullName);
✅ جرّب تغيّر الاسم الأول والأخير، وشارك النتيجة!
🎯 متى أستخدم return؟
استخدم return
لما بدك الدالة ترجع قيمة (رقم، نص، نتيجة...). ما تستخدمها إذا بس بدك تطبع شيء.
مثال بدون return:
function greet() {
console.log("مرحبًا!");
}
مثال مع return:
function getGreeting() {
return "مرحبًا!";
}
👀 الفرق؟ في الثاني نقدر نستخدم الرسالة في مكان ثاني، نطبعها لاحقًا أو نضيفها لعنصر في الصفحة.
🧠 دوال داخل دوال؟ نعم!
نقدر نستدعي دالة من داخل دالة:
function getWelcomeMessage(name) {
return "أهلًا بك، " + name + "!";
}
function showMessage() {
let message = getWelcomeMessage("سامي");
console.log(message);
}
showMessage();
✨ هيك بتكون الشيفرة منظمة وقابلة لإعادة الاستخدام!
📚 مصطلحات اليوم:
- Parameter (معامل): معلومة بنرسلها للدالة.
- Argument: القيمة الفعلية اللي بنرسلها عند استدعاء الدالة.
- Return: ترجع نتيجة من الدالة لاستخدامها لاحقًا.
📝 تمرين إضافي:
اكتب دالة calculateAge
تأخذ سنة الميلاد وترجع العمر.
function calculateAge(birthYear) {
return 2025 - birthYear;
}
let myAge = calculateAge(2010);
console.log("عمري هو: " + myAge + " سنة");
🎉 عدّل السنة وجربها على عائلتك!
💬 سؤال اليوم:
لو بدك تكتب دالة ترجع درجة الطالب بناءً على 3 علامات، شو بتسميها؟
مثال:
function calculateGrade(mark1, mark2, mark3) {
return (mark1 + mark2 + mark3) / 3;
}
شاركنا إجابتك في التعليقات! 👇👇