108 of 264 menu

Metodas reduce

Metodas reduce sumažina masyvą iki vienos reikšmės (redukuoja). Pavyzdžiui, šiuo metodu galima lengvai rasti masyvo elementų sumą (t.y. masyvas bus sumažintas iki vienos reikšmės - elementų sumos).

Pirmuoju parametru metodas reduce gauna funkciją, kuri nuosekliai vyks kiekvienam masyvo elementui, pradedant nuo pirmojo. Į šią funkciją galima perduoti 4 parametrus. Jei šie parametrai yra (jie nėra privalomi), tada pirmajame automatiškai bus tarpinis rezultatas, antrajame - masyvo elementas, trečiajame - jo numeris masyve (indeksas), o ketvirtajame - pats masyvas.

Tarpinis rezultatas - tai kintamasis, kuriame kaupsis ta reikšmė, kurią grąžins metodas reduce, kai peržiūrės visus masyvo elementus. Pavyzdžiui, ten galima nuosekliai kaupti masyvo elementų sumą: pirmiausia patalpinti pirmąjį elementą, kitą kartą cikle jau pirmojo ir antrojo elemento sumą, kitą kartą - pirmojo, antrojo ir trečiojo sumą. Ir taip, kol masyvas nesibaigs. Funkcija, kurią priima reduce, turi grąžinti naują tarpinio rezultato reikšmę.

Antruoju metodo reduce parametru nurodoma pradinė tarpinio rezultato reikšmė. Jei ji nenurodyta, ji bus lygi pirmajam masyvo elementui, o elementų apdorojimas prasidės nuo antrojo elemento.

Sintaksė

masyvas.reduce(function(tarpinisRezultatas, elementas, indeksas, masyvas) { return naujas tarpinis rezultatas; }, pradinė reikšmė);

Pavyzdys

Raskime masyvo elementų sumą:

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

Kodo vykdymo rezultatas:

21

Pavyzdys

Raskime visų teigiamų masyvo skaičių sumą:

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);

Kodo vykdymo rezultatas:

10

Taip pat žiūrėkite

  • metodas reduceRight,
    atliekantis panašų veiksmą
  • metodas filter,
    leidžiantis filtruoti masyvo elementus
  • metodai map ir forEach,
    leidžiantys pritaikyti funkciją kiekvienam masyvo elementui
  • metodai some ir every,
    atliekantys masyvo patikrinimą
Lietuvių
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mes naudojame slapukus svetainės veikimui, analizei ir personalizavimui. Duomenų apdorojimas vyksta pagal Privatumo politiką.
priimti visus nustatyti atšaukti