JavaScript Diziler : funksiyası azaltmaq Anlaşma

sintaksis

arr.reduce(callbackFunction, [initialValue])

Nə azaltmaq edir?

Azaltmaq bir sıra vasitəsilə loops bir funksiyası var.

Əməliyyatlar bir callback funksiyası vasitəsilə sıra həyata keçirilə bilər.

sıra əməliyyatların sonunda, qaytarır tək dəyər azaltmaq

istifadə edilə bilər azaldır, misal üçün, Bir alış-veriş araba cəmi

misal

  Varış = imkan [1,2,3,4,5];
  arr.reduce( (akkumulyator, currentValue, currentIndex, array) => { 
      //bəzi əməliyyatları;
      bir şey qayıtmaq;
  });

 

Callback Function

callback funksiyası serialın hər element üçün istinad edilir, keçən 4 azaltmaq funksiyası ilə qəbul edilir dəlilləri.

Bu 4 dəlilləri sonra zəng funksiyası istifadə edilə bilər.

dörd dəlilləri edir

  1. akkumulyator – təchiz ilk loop və ya ilkin dəyər serialın ilk element. əvvəlki loop Sonra döndü dəyəri.
  2. currentValue – sıra cari element. array yəni ikinci element başlayır. Varış[1], ilkin dəyəri arqument qəbul deyil zaman. ilkin dəyəri arqument qəbul, onda cari dəyəri array Varış 1-ci element başlayır[0].
  3. currentIndex – cari element index.
  4. array – bütün array.

İş Nümunə

Varış = imkan [1,2,3,4,5];

arr.reduce(
  (akkumulyator, currentValue, currentIndex, array) => {
    console.log(`akkumulyator (1-ci loop On, akkumulyator Varış deyil[0], o, əvvəlki loop geri dəyəri): ${akkumulyator}`);
    console.log(`currentValue (array vasitəsilə Loops, Varış başlayan[1]): ${currentValue}`);
    console.log(`currentIndex: ${currentIndex}`);
    console.log(`array: ${array}`);
    console.log("---");
    geri akkumulyator + currentValue;
  }
);

buraxılış

akkumulyator (1-ci loop On, akkumulyator Varış deyil[0], o, əvvəlki loop geri dəyəri): 1
currentValue (array vasitəsilə Loops, Varış başlayan[1]): 2
currentIndex: 1
array: 1,2,3,4,5
---
akkumulyator (1-ci loop On, akkumulyator Varış deyil[0], o, əvvəlki loop geri dəyəri): 3
currentValue (array vasitəsilə Loops, Varış başlayan[1]): 3
currentIndex: 2
array: 1,2,3,4,5
---
akkumulyator (1-ci loop On, akkumulyator Varış deyil[0], o, əvvəlki loop geri dəyəri): 6
currentValue (array vasitəsilə Loops, Varış başlayan[1]): 4
currentIndex: 3
array: 1,2,3,4,5
---
akkumulyator (1-ci loop On, akkumulyator Varış deyil[0], o, əvvəlki loop geri dəyəri): 10
currentValue (array vasitəsilə Loops, Varış başlayan[1]): 5
currentIndex: 4
array: 1,2,3,4,5
---

 

ilkin dəyər təmin

İkinci parametr ifadə (initialValue) azaltmaq funksiyası initialValue ilk loop akkumulyator arqument kimi qəbul səbəb olacaq.

1-ci loop cari dəyər indi serialın ilk element başlayır Qeyd edək ki,

İş Nümunə

  Varış = imkan [1,2,3,4,5];

  arr.reduce(
  (akkumulyator, currentValue, currentIndex, array) => {
    console.log(`akkumulyator ( 1-ci loop On, Bu ilkin dəyəri, əvvəlki loop sonra döndü dəyəri): ${akkumulyator}`);
    console.log(`currentValue (array vasitəsilə Loops, Varış başlayan[0]): ${currentValue}`);
    console.log(`currentIndex: ${currentIndex}`);
    console.log(`array: ${array}`);
    console.log("---");
    geri akkumulyator + currentValue;
  }, 0
);

buraxılış

akkumulyator ( 1-ci loop On, Bu ilkin dəyəri, əvvəlki loop sonra döndü dəyəri): 0
currentValue (array vasitəsilə Loops, Varış başlayan[0]): 1
currentIndex: 0
array: 1,2,3,4,5
---
akkumulyator ( 1-ci loop On, Bu ilkin dəyəri, əvvəlki loop sonra döndü dəyəri): 1
currentValue (array vasitəsilə Loops, Varış başlayan[0]): 2
currentIndex: 1
array: 1,2,3,4,5
---
akkumulyator ( 1-ci loop On, Bu ilkin dəyəri, əvvəlki loop sonra döndü dəyəri): 3
currentValue (array vasitəsilə Loops, Varış başlayan[0]): 3
currentIndex: 2
array: 1,2,3,4,5
---
akkumulyator ( 1-ci loop On, Bu ilkin dəyəri, əvvəlki loop sonra döndü dəyəri): 6
currentValue (array vasitəsilə Loops, Varış başlayan[0]): 4
currentIndex: 3
array: 1,2,3,4,5
---
akkumulyator ( 1-ci loop On, Bu ilkin dəyəri, əvvəlki loop sonra döndü dəyəri): 10
currentValue (array vasitəsilə Loops, Varış başlayan[0]): 5
currentIndex: 4
array: 1,2,3,4,5
---                                                                 

Bir cavab yazın