نوفيل
الرئيسيةالكورساتالتحديات⚔️ المبارزاتالمقالاتالأدواتتغريداتالمجتمع
دخولابدأ مجاناً
الرئيسيةالكورساتالتحديات⚔️ المبارزاتالمقالاتالأدواتتغريداتالمجتمع
نوفيل

منصة تعليم البرمجة الأولى بالعربي. تعلم من الصفر حتى الاحتراف مع كورسات احترافية وتحديات ذكاء اصطناعي.

المنصة

  • الكورسات
  • التحديات
  • المقالات
  • الأدوات

الحساب

  • إنشاء حساب
  • تسجيل الدخول
  • لوحة التحكم
  • الملف الشخصي

روابط

  • سياسة الخصوصية
  • شروط الاستخدام
  • عن نوفيل
  • تواصل معنا

© 2026 نوفيل. جميع الحقوق محفوظة.

صُنع بـ في مصر

نوفيل
الرئيسيةالكورساتالتحديات⚔️ المبارزاتالمقالاتالأدواتتغريداتالمجتمع
دخولابدأ مجاناً
الرئيسيةالكورساتالتحديات⚔️ المبارزاتالمقالاتالأدواتتغريداتالمجتمع
JS

منهج JavaScript

دليل مرجعي شامل

كل اللغات
مدرسة البرمجة/منهج JavaScript/الحلقات التكرارية: الجزء الأول (For Loops)

الحلقات التكرارية: الجزء الأول (For Loops)

for loop javascriptحلقات التكرار جافاسكريبتfor of for inالفرق بين for of و for in

جدول مرجعي سريع

1
النوعالاستخدام المثالييُعيد
forعدد تكرارات معروف، تحكم دقيق بالفهرسلا شيء (تتحكم أنت)
for...ofالمرور على عناصر مصفوفة أو نصالقيمة مباشرة
for...inالمرور على مفاتيح كائناسم المفتاح

الشرح

الحلقات التكرارية (Loops) تسمح بتنفيذ كتلة كود عدة مرات دون تكرار كتابتها يدوياً. حلقة for هي الأكثر استخداماً عندما تعرف مسبقاً عدد مرات التكرار، وتتكون من ثلاثة أجزاء مفصولة بفواصل منقوطة: التهيئة (Initialization) التي تُنفَّذ مرة واحدة في البداية، الشرط (Condition) الذي يُفحص قبل كل تكرار وتتوقف الحلقة عندما يصبح false، والتحديث (Update) الذي يُنفَّذ بعد كل تكرار.

من أكثر الحلقات استخداماً مع المصفوفات حلقة for...of، وهي تُبسط عملية المرور على كل عنصر في مصفوفة أو أي كائن قابل للتكرار (Iterable) مباشرة دون الحاجة لعداد يدوي أو فهرس. تُعطيك for...of القيمة مباشرة في كل تكرار، وليس الفهرس.

أما حلقة for...in فتُستخدم للمرور على مفاتيح (Keys) كائن عادي — تُعطيك اسم كل خاصية (Property) في الكائن كنص. من المهم عدم الخلط بينها وبين for...of: for...in للكائنات ومفاتيحها، وfor...of للمصفوفات وعناصرها القابلة للتكرار.

في البرمجة الحديثة، تُفضَّل غالباً دوال المصفوفات مثل forEach وmap وfilter على حلقة for التقليدية عند التعامل مع المصفوفات، لأنها أوضح قصداً وأقل عرضة لأخطاء الفهرسة، لكن for التقليدية تبقى ضرورية عندما تحتاج تحكماً دقيقاً في الفهرس أو تريد إيقاف/تخطي التكرار بشكل مخصص.

الصياغة (Syntax)

syntax
1// حلقة for التقليدية
2for (let i = 0; i < 5; i++) {
3 console.log(i);
4}
5
6// for...of للمرور على عناصر مصفوفة
7for (const عنصر of [10, 20, 30]) {
8 console.log(عنصر);
9}
10
11// for...in للمرور على مفاتيح كائن
12for (const مفتاح in { اسم: "علي", عمر: 30 }) {
13 console.log(مفتاح);
14}

أمثلة عملية

مثال 1: حلقة for مع شرط داخلي

حلقة for مع شرط داخلي
1// طباعة الأعداد الزوجية من 0 إلى 10
2for (let i = 0; i <= 10; i++) {
3 if (i % 2 === 0) {
4 console.log(i);
5 }
6}
7// النتيجة: 0, 2, 4, 6, 8, 10

مثال 2: الفرق بين for...of و for...in

الفرق بين for...of و for...in
1const فواكه = ["تفاح", "موز", "برتقال"];
2
3// for...of: يُعطي القيمة مباشرة
4for (const فاكهة of فواكه) {
5 console.log(فاكهة);
6}
7
8// for...in: يُعطي الفهرس (index) في المصفوفات
9for (const فهرس in فواكه) {
10 console.log(فهرس, فواكه[فهرس]);
11}

نصائح احترافية

  • —استخدم for...of مع المصفوفات وfor...in مع الكائنات — الخلط بينهما خطأ شائع جداً.
  • —تجنب تعديل طول المصفوفة أثناء المرور عليها بحلقة for — قد يُسبب سلوكاً غير متوقع.
  • —في الحالات البسيطة، دوال المصفوفة (forEach, map, filter) غالباً أوضح من حلقة for التقليدية.
  • —احذر من الحلقات اللانهائية: تأكد أن الشرط سيصبح false في مرحلة ما.

الدرس السابق

جملة الاختيار (Switch Statement)

الدرس التالي

الحلقات التكرارية: الجزء الثاني (While & Do While Loops)

نوفيل

منصة تعليم البرمجة الأولى بالعربي. تعلم من الصفر حتى الاحتراف مع كورسات احترافية وتحديات ذكاء اصطناعي.

المنصة

  • الكورسات
  • التحديات
  • المقالات
  • الأدوات

الحساب

  • إنشاء حساب
  • تسجيل الدخول
  • لوحة التحكم
  • الملف الشخصي

روابط

  • سياسة الخصوصية
  • شروط الاستخدام
  • عن نوفيل
  • تواصل معنا

© 2026 نوفيل. جميع الحقوق محفوظة.

صُنع بـ في مصر