ستصف هذه المقالة الإجراء المتبع لإيقاف حلقة forEach في JavaScript.
كيفية إيقاف JavaScript forEach؟
اعتمادًا على الاحتياجات المحددة للبرنامج ، هناك عدة طرق لإيقاف حلقة في البرمجة. على سبيل المثال ، يمكنك استخدام شرط إنهاء حلقة أو تعليمة كسر مثل ' فترة راحة ' أو ال ' خروج 'لإيقاف الحلقة عند استيفاء شرط معين. ومع ذلك ، فإن المشكلة هي أن ' لكل 'حلقة خطأ أثناء استخدام هذه العبارات.
مثال 1: استخدم 'break' في حلقة forEach JavaScript
دعونا نحاول إيقاف ' لكل 'حلقة باستخدام' فترة راحة ' بيان. أولاً ، أنشئ مصفوفة من الأرقام الفردية:
كانت مجموعة = [ واحد و 3 و 5 و 7 و 9 و أحد عشر و 13 و خمسة عشر ] ؛
استخدم حلقة forEach لتكرار المصفوفة. إذا كان العنصر ' 5 'في مصفوفة أثناء التكرار ، أوقف الحلقة:
مجموعة مصفوفة. لكل ( جزء => {
لو ( جزء == 5 ) {
فترة راحة ؛
}
} ) ؛
يمكن ملاحظة أن تعليمة break لا تعمل في حلقة forEach:
مثال 2: استخدم 'EXIT' في كل حلقة JavaScript
حاول إيقاف الحلقة باستخدام ' خروج 'عندما يكون العنصر' 5 'يحدث في مصفوفة أثناء التكرار:
مجموعة مصفوفة. لكل ( جزء => {
لو ( جزء == 5 ) {
خروج ؛
}
} ) ؛
كما أنه يتسبب في حدوث خطأ:
يبدو أن إيقاف حلقة forEach () يمثل تحديًا مستحيلًا ، ولكن إليك بعض الحلول لتقييمها:
الطريقة الأولى: إيقاف JavaScript forEach باستخدام 'try / catch' Block
لا توجد طريقة مضمنة لإيقاف أو كسر حلقة forEach () في JavaScript. ومع ذلك ، يمكنك تحقيق تأثير مماثل من خلال طرح استثناء والتقاطه داخل الحلقة. للقيام بذلك ، استخدم ' حاول / قبض ' منع. إنها بنية تحكم تسمح لك بمعالجة الاستثناءات أو أخطاء وقت التشغيل التي قد تحدث في التعليمات البرمجية. تم العثور على الرمز الذي قد يتسبب في حدوث استثناء في ' محاولة '، في حين أن الكود الذي يتعامل مع الاستثناء مضمن في' يمسك ' منع.
بناء الجملة
استخدم الصيغة الموضحة أدناه لاستخدام كتلة try / catch:
محاولة {// رمز قد يطرح استثناء
} يمسك ( خطأ ) {
// كود للتعامل مع الاستثناء
}
مثال
قم بلف شفرة حلقة forEach () في كتلة try / catch لإيقاف الحلقة عن طريق معالجة الخطأ:
محاولة {مجموعة مصفوفة. لكل ( جزء => {
لو ( جزء == 5 ) {
رمي الجديد استثناء ( 'قف' ) ؛
}
} ) ؛
} يمسك ( و ) {
وحدة التحكم. سجل ( 'انتهت الحلقة' ) ؛
}
في مقتطف الشفرة أعلاه ، عند طرح استثناء داخل كتلة try ، سينتقل البرنامج فورًا إلى كتلة catch وتنفيذ الكود هناك. يمنحنا هذا القدرة على إدارة الاستثناء وحماية البرنامج من التعطل.
انتاج |
لا يُنصح عمومًا باستخدام كتلة try / catch لإيقاف حلقة forEach () في JavaScript. هذا لأن الغرض من كتلة try / catch هو معالجة الاستثناءات بدلاً من التحكم في تدفق الحلقة. لذلك ، من الأفضل استخدام طرق بديلة.
الطريقة الثانية: استخدم حلقة 'for' في JavaScript
استخدم ال ' ل 'بدلاً من حلقة forEach (). يتم استخدام تعليمة break في حلقة for ، مما يسمح بخروج مبكر قبل الوصول إلى حالة إنهاء الحلقة. يمكن أن يكون هذا مفيدًا إذا كنت تريد إيقاف الحلقة عند تقييم حالة معينة على أنها ' حقيقي 'أو الخروج من الحلقة لأي سبب آخر.
بناء الجملة
اتبع بناء الجملة التالي لاستخدام ' ل ' عقدة:
ل ( دعني = 0 ؛ أنا < مجموعة مصفوفة. الطول ؛ أنا ++ ) {//حالة
فترة راحة ؛
}
مثال
استخدم ال ' ل 'حلقة لتكرار المصفوفة حتى طولها وإيقاف المصفوفة أثناء حدوث العنصر' 5 'في مصفوفة:
ل ( دعني = 0 ؛ أنا < مجموعة مصفوفة. الطول ؛ أنا ++ ) {مقدار ثابت جزء = مجموعة مصفوفة [ أنا ] ؛
لو ( جزء == 5 ) {
فترة راحة
}
وحدة التحكم. سجل ( جزء ) ؛
}
الحلقة تتوقف عندما ' 5 'يظهر في مصفوفة:
الطريقة الثالثة: استخدم حلقة 'for-of' في JavaScript
يمكنك أيضًا استخدام ' مقابل 'حلقة كبديل لحلقة forEach (). يتم استخدامه للتكرار خلال عناصر كائن قابل للتكرار ، مثل مصفوفة أو سلسلة. إنه مشابه لحلقة for-in ولكنه مصمم خصيصًا للعمل مع الكائنات القابلة للتكرار ويعتبر بشكل عام أكثر إيجازًا وأسهل في القراءة.
بناء الجملة
يتم استخدام الصيغة التالية لحلقة for-of:
ل ( مقدار ثابت عنصر المصفوفة ) {//حالة
فترة راحة ؛
}
مثال
تُستخدم حلقة for-of هنا لتكرار المصفوفة وإيقاف التكرار عندما يكون العنصر ' 5 'يظهر في مصفوفة أثناء التكرار:
ل ( مقدار ثابت عنصر المصفوفة ) {لو ( جزء == 5 ) {
فترة راحة ؛
}
وحدة التحكم. سجل ( جزء ) ؛
}
انتاج |
هذا كل شيء عن إيقاف حلقة forEach () في جافا سكريبت.
استنتاج
لا توجد طريقة مضمنة لإيقاف أو كسر حلقة forEach () في JavaScript. ولكن يمكنك تحقيق تأثير مماثل باستخدام ' حاول / قبض ' منع. ومع ذلك ، لا يوصى باستخدامه لأن كتلة try / catch هي للتعامل مع الاستثناءات بدلاً من التحكم في تدفق الحلقة. لذا ، فإن الأسلوب المثالي هو استخدام طرق بديلة ، مثل ' ل ' أو ال ' مقابل ' عقدة. في هذه المقالة ، وصفنا إجراء إيقاف حلقة forEach () في JavaScript.