1. foreach ايتراتور
تستقبل طريقة foreach وظيفة كمعلمة ، وتستخدم هذه الوظيفة لكل عنصر في الصفيف ، ويدعو هذه الوظيفة فقط ، لا تغير المصفوفة نفسها أي
// foreach iterator function square (num) {document.write (num + '' + num*num + '<br>') ؛} var nums = [1،2،3،4،5،6،7،8] ؛ nums.foreach (square) ؛الناتج الناتج في المتصفح هو:
2. كل مكرر
تقبل كل طريقة وظيفة ذات قيمة إرجاع منطقية ، وتستخدم هذه الوظيفة لكل عنصر في الصفيف. إذا كانت الوظيفة تُرجع بشكل صحيح لجميع العناصر ، فإن الطريقة تُرجع بشكل صحيح ، وإلا فإنها تُرجع كاذبة
// كل وظيفة ايتراتور iseven (num) {return num ٪ 2 == 0 ؛} var nums = [2،4،6،8] ؛ document.write (nums.every (iseven)) ؛3. بعض التكرار
بعض الطريقة تقبل أيضًا وظيفة ذات قيمة إرجاع منطقية. طالما أن هناك عنصرًا يتسبب في إرجاع الوظيفة ، فإن الطريقة تُرجع بشكل صحيح.
// بعض وظيفة ITerator iseven (num) {return num ٪ 2 == 0 ؛} var nums = [1،3،5،7] ؛ document.write (nums.some (iseven)) ؛4. تقليل التكرار
تقليل الطريقة تقبل وظيفة وإرجاع قيمة. تبدأ الطريقة بقيمة متراكمة ، تستدعي باستمرار الوظيفة على القيمة المتراكمة والعناصر اللاحقة في الصفيف ، وتعرف العنصر الأخير في الصفيف ، وأخيراً يحصل على القيمة المتراكمة التي تم إرجاعها
// تقليل وظيفة التكرار إضافة (RunningTotal ، currentValue) {return RunningTotal + currentValue ؛} var nums = [1،2،3،4،5،6،7،8،10] ؛ var sum = nums.reduce (add) ؛ document.write (sum) ؛النتيجة هي: 55
جنبا إلى جنب مع add() reduce() ، يتم تلخيص العناصر في الصفيف من اليسار إلى اليمين. عملية التنفيذ هي كما يلي:
إضافة (1،2) -> 3ADD (3،3) -> 6add (6،4) -> 10add (10،5) -> 15add (15،6) -> 21add (21،7) -> 28add (28،8) -> 36add (36،9) -> 45add (45،10) -> 55
يمكن أيضًا استخدام طريقة reduce لربط العناصر في صفيف في سلسلة طويلة. الرمز كما يلي
// استخدام تقليل إلى تسلسلة عناصر صفيف الوظيفة concat (تراكم ، البند) {return accumustring + item ؛} var words = ['the' ، 'Quick' ، 'Brown' ، 'Fox']نتيجة الإخراج النهائي هي على النحو التالي:
يوفر JavaScript أيضًا طريقة reduceRight ، يتم تنفيذها من اليمين إلى اليسار ، على عكس طريقة Reduce ، على النحو التالي:
// استخدام تقليل إلى Concatenate Array Elements Concat (تراكم ، عنصر) {return accumustring + item ؛} var words = ['the' ، 'Quick' ، 'Brown' ، 'Fox']نتائج التنفيذ هي كما يلي:
5. خريطة التكرار
يشبه التكرار الخريطة إلى حد ما Foreach ، لكن MAP ستقوم بتغيير الصفيف وإنشاء صفيف جديد ، كما هو موضح في الكود التالي
// استخدم Map ITerator لإنشاء منحنى دالة صفيف جديد (الصف) {درجة الإرجاع+5 ؛} var screntes = [77،65،81،92،83] ؛ var newgrades = grades.map (curve) ؛ document.write (newgrades) ؛نتيجة الإخراج:
6.fiter ايتراتور
على غرار كل مكرر ، يمر في وظيفة ذات قيمة إرجاع منطقية. على عكس every طريقة ، عندما تُرجع جميع العناصر الموجودة في الصفيف نتيجة الوظيفة المقابلة ، فإن الطريقة لا تُرجع صحيحًا ، ولكنها تُرجع صفيفًا جديدًا ، والذي يحتوي على العناصر ذات الوظيفة المقابلة لإرجاع نتيجة صواب. الرمز كما يلي
وظيفة iseven (num) {return num ٪ 2 == 0 ؛} وظيفة isodd (num) {return num ٪ 2! = 0 ؛} var nums = [] ؛ for (var i = 0 ؛ i <20 ؛ i ++) {nums [i] = i+1 ؛ nums.filter (isodd) ؛ document.write (odds) ؛نتيجة الإخراج على النحو التالي:
لخص
ما سبق هو ملخص لستة متكررين في JavaScript. آمل أن يكون محتوى هذه المقالة مفيدًا لدراسة الجميع والعمل.