82 lines
2.8 KiB
Markdown
82 lines
2.8 KiB
Markdown
---
|
|
title: For Loop
|
|
localeTitle: لحلقة
|
|
---
|
|
### بناء الجملة
|
|
|
|
`for ([initialization]); [condition]; [final-expression]) {
|
|
// statement
|
|
}
|
|
`
|
|
|
|
جافا سكريبت `for` بيان يتكون من ثلاث عبارات وبيان:
|
|
|
|
## وصف
|
|
|
|
* التهيئة - تشغيل قبل تنفيذ الأول في الحلقة. يستخدم هذا التعبير عادة لإنشاء عدادات. يتم تحديد نطاق المتغيرات التي تم إنشاؤها هنا للحلقة. بمجرد الانتهاء من الحلقة هو التنفيذ يتم تدميرها.
|
|
* condition - التعبير الذي يتم التحقق منه قبل تنفيذ كل تكرار. إذا تم حذف هذا التعبير ، فسيتم تقييم هذا التعبير على "true". إذا تم تقييمه إلى true ، فسيتم تنفيذ عبارة الحلقة. إذا تم تقييمه إلى false ، فستتوقف الحلقة.
|
|
* التعبير النهائي - التعبير الذي يتم تشغيله بعد كل عملية تكرار. عادة ما تستخدم لزيادة عداد. ولكن يمكن استخدامه لتقليل عداد أيضا.
|
|
* statement - تكرار الرمز في الحلقة
|
|
|
|
يمكن حذف أي من هذه العبارات الثلاثة أو البيان. للحلقات المستخدمة عادة لحساب عدد معين من التكرار لتكرار العبارة. استخدم عبارة `break` للخروج من الحلقة قبل تقييم تعبير الشرط إلى false.
|
|
|
|
## المخاطر المشتركة
|
|
|
|
**تجاوز حدود صفيف**
|
|
|
|
عند الفهرسة عبر مصفوفة عدة مرات ، من السهل تجاوز حدود الصفيف (على سبيل المثال ، حاول أن ترجع العنصر الرابع في صفيف مكون من 3 عناصر).
|
|
|
|
` // This will cause an error.
|
|
// The bounds of the array will be exceeded.
|
|
var arr = [ 1, 2, 3 ];
|
|
for (var i = 0; i <= arr.length; i++) {
|
|
console.log(arr[i]);
|
|
}
|
|
|
|
output:
|
|
1
|
|
2
|
|
3
|
|
undefined
|
|
`
|
|
|
|
هناك طريقتان لإصلاح هذا الرمز. اضبط الشرط إما على `i < arr.length` أو `i <= arr.length - 1`
|
|
|
|
### أمثلة
|
|
|
|
تكرار عبر الأعداد الصحيحة من 0-8
|
|
|
|
`for (var i = 0; i < 9; i++) {
|
|
console.log(i);
|
|
}
|
|
|
|
output:
|
|
0
|
|
1
|
|
2
|
|
3
|
|
4
|
|
5
|
|
6
|
|
7
|
|
8
|
|
`
|
|
|
|
الخروج من حلقة قبل تعبير الشرط غير صحيح
|
|
|
|
`for (var elephant = 1; elephant < 10; elephant+=2) {
|
|
if (elephant === 7) {
|
|
break;
|
|
}
|
|
console.info('elephant is ' + elephant);
|
|
}
|
|
|
|
output:
|
|
elephant is 1
|
|
elephant is 3
|
|
elephant is 5
|
|
`
|
|
|
|
### موارد آخرى
|
|
|
|
* [MDN - للإدلاء بالبيانات](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for) |