108 of 264 menu

Meetod reduce

Meetod reduce taandab massiivi üheks väärtuseks (reduktseerib). Näiteks selle meetodi abil on lihtne leida massiivi elementide summat (see tähendab, et massiiv taandatakse üheks väärtuseks - elementide summaks).

Esimese parameetrina saab meetod reduce funktsiooni, mis käivitub järjestikku iga massiivi elemendi jaoks, alates esimesest. Sellele funktsioonile saab edastada 4 parameetrit. Kui need parameetrid on olemas (nad pole kohustuslikud), siis esimesse satub automaatselt vahetulemus, teise satub massiivi element, kolmandasse - selle number massiivis (indeks), ja neljandasse - massiiv ise.

Vahetulemus - on muutuja, milles koguneb väärtus, mille meetod reduce tagastab, kui see on läbi käinud kõik massiivi elemendid. Näiteks sinna saab järjestikku koguda massiivi elementide summat: kõigepealt panna esimene element, järgmisel tsükli käigul juba esimese ja teise elemendi summa, järgmisel käigul - esimese, teise ja kolmanda summa. Ja nii edasi, kuni massiiv lõppeb. Funktsioon, mida reduce aktsepteerib, peab tagastama uue vahetulemuse väärtuse.

Meetodi reduce teise parameetrina määratakse vahetulemuse algväärtus. Kui seda ei määrata, on see võrdne esimese massiivi elemendiga ja elementide töötlemine algab teisest elemendist.

Süntaks

massiiv.reduce(function(vahetulemus, element, indeks, massiiv) { return uus vahetulemus; }, algväärtus);

Näide

Leiame massiivi elementide summa:

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

Koodi täitmise tulemus:

21

Näide

Leiame kõikide positiivsete arvude summa massiivis:

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

Koodi täitmise tulemus:

10

Vaata ka

  • meetod reduceRight,
    mis teostab sarnast operatsiooni
  • meetod filter,
    mis võimaldab massiivi elemente filtreerida
  • meetodid map ja forEach,
    mis võimaldavad rakendada funktsiooni igale massiivi elemendile
  • meetodid some ja every,
    mis teostavad massiivi kontrolli
Eesti
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Me kasutame saidi toimimiseks, analüüsi ja personaliseerimiseks küpsiseid. Andmete töötlemine toimub vastavalt Privaatsuspoliitikale.
nõustu kõigega häälesta keeldu