🔁 التكرار في JavaScript – جملة while
🎉 أهلًا بكم من جديد!
في المقال السابق، تعلمنا كيف نستخدم جملة for لتكرار الكود. واليوم رح نتعلم طريقة جديدة للتكرار: while 😎.

زي ما قلنا قبل، التكرار بيساعدنا نعيد نفس الكود أكثر من مرة، بدون ما نكتبه كل مرة.
🔍 شو الفرق بين for
و while
؟
for
: بنعرف فيها البداية والنهاية والخطوة بوضوح (زي عداد).while
: بنستخدمها لما نعرف الشرط، لكن مش شرط نعرف النهاية.
يعني while
بنفع لما نقول: "استمر طالما أن الشرط صحيح".
🧠 كيف نكتب while
؟
شكلها بسيط:
let i = 1;
while (i <= 5) {
console.log("مرحبًا! رقم " + i);
i++;
}
🔹 النتيجة: طباعة الجملة 5 مرات، من 1 إلى 5.
📌 شرح الكود خطوة بخطوة:
- let i = 1: نبدأ من الرقم 1.
- while (i <= 5): طالما i أقل أو يساوي 5، كرر الكود.
- i++: زيد الرقم واحد كل مرة.
📚 مثال ممتع:
بدنا نطبع جملة: "أنا أحب الشوكولاتة!" ثلاث مرات باستخدام while
:
let count = 1;
while (count <= 3) {
console.log("أنا أحب الشوكولاتة!");
count++;
}
🍫 النتيجة؟ الجملة تنطبع 3 مرات، وكل مرة بيزيد الرقم.
❗ تنبيه مهم:
لو نسينا نزيد count++
، الكود رح يشتغل إلى الأبد! 😱
وهذا اسمه حلقة لا نهائية (infinite loop). لازم دايمًا نكتب شرط التوقف.
🔁 مقارنة سريعة:
جملة for:
for (let i = 1; i <= 3; i++) {
console.log("مرحبًا!");
}
جملة while:
let i = 1;
while (i <= 3) {
console.log("مرحبًا!");
i++;
}
💡 النتيجة نفس الشي، لكن الطريقة مختلفة.
🎯 تمرين للأطفال:
جرب تكتب كود باستخدام while
يطبع جدول الضرب للعدد 5:
let i = 1;
while (i <= 10) {
console.log("5 × " + i + " = " + (5 * i));
i++;
}
✏️ غير الرقم إلى 6 أو 9 أو أي عدد بتحبه!
🎮 نشاط مسلّي:
اعمل برنامج يسأل الطفل "هل تريد المتابعة؟" وطالما الجواب "نعم"، يعيد السؤال.
let answer = "نعم";
while (answer === "نعم") {
answer = prompt("هل تريد المتابعة؟ (نعم / لا)");
}
🟡 هذا المثال يستخدم prompt()
لإظهار نافذة للمستخدم. جربه في المتصفح.
💬 سؤال اليوم:
لو كنت تصمم لعبة، في أي جزء رح تستخدم while
؟
مثلاً: أثناء العد التنازلي؟ أثناء الحركة؟ أو أثناء انتظار اللاعب؟ 🎮
شاركنا إجابتك في التعليقات! 👇👇
📚 مصطلحات جديدة:
- while: جملة تكرار تعتمد على شرط.
- count++: زيادة الرقم واحد في كل دورة.
- prompt(): دالة بتسأل المستخدم وتنتظر إدخال.
🧩 تحدي الأبطال:
اكتب كود باستخدام while
لطباعة الأعداد من 10 إلى 1 (عكسيًا)!
💡 تلميح: استخدم --
بدل ++
.
🚀 شارك الحل في التعليقات!