108 of 264 menu

Метод reduce

Метод reduce савија низ до једне вредности (редукује). На пример, помоћу овог метода се лако може наћи збир елемената низа (то јест низ ће се свести на једну вредност - на збир елемената).

Првим параметром метод reduce добија функцију, која ће се секвенцијално извршити за сваки елемент низа, почевши од првог. У ову функцију се могу проследити 4 параметра. Ако ови параметри постоје (нису обавезни), онда ће у први аутоматски ући интермедијарни резултат, у други ће ући елемент низа, у трећи - његов број у низу (индекс), а у четврти - сам низ.

Интермедијарни резултат - то је променљива, у којој ће се акумулирати та вредност, коју ће вратити метод reduce, када прође кроз све елементе низа. На пример, тамо се може секвенцијално акумулирати збир елемената низа: прво ставити први елемент, при следећем пролазу кроз циклус већ збир првог елемента и другог, при следећем пролазу - збир првог, другог и трећег. И тако, док се низ не заврши. Функција, коју прима reduce, треба да врати нову вредност интермедијарног резултата.

Другим параметром метода reduce се наводи почетна вредност интермедијарног резултата. Ако се не наведе, биће једнака првом елементу низа, а обрада елемената ће почети од другог елемента.

Синтакса

низ.reduce(function(интермедијарни резултат, елемент, индекс, низ) { return нови интермедијарни резултат; }, почетна вредност);

Пример

Нађимо збир елемената низа:

let arr = [1, 2, 3, 4, 5, 6]; let res = arr.reduce(function(sum, elem) { return sum + elem; }, 0); console.log(res);

Резултат извршавања кода:

21

Пример

Хајде да нађемо збир свих позитивних бројева низа:

let arr = [1, -2, -3, 4, 5, -6]; let res = arr.reduce(function(sum, elem) { if (elem >= 0) { return sum + elem; } else { return sum; } }, 0); console.log(res);

Резултат извршавања кода:

10

Погледајте такође

  • метод reduceRight,
    који обавља сличну операцију
  • метод filter,
    који омогућава филтрирање елемената низа
  • методи map и forEach,
    који омогућавају примену функције на сваки елемент низа
  • методи some и every,
    који обављају проверу низа
Српски
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Користимо колачиће за рад сајта, аналитику и персонализацију. Обрада података се врши у складу са Политиком приватности.
прихвати све подеси одбиј