105 of 264 menu

Metóda filter

Metóda filter umožňuje filtrovať prvky poľa, pričom ponechá len tie, ktoré spĺňajú určitú podmienku. Metóda ako parameter prijíma funkciu, ktorá sa vykoná pre každý prvok poľa. Výsledkom metódy je nové pole, do ktorého vstúpia len tie prvky, pre ktoré zadaná funkcia vráti true.

Do funkcie je možné odovzdať tri parametre. Ak tieto parametre existujú (nie sú povinné), tak do prvého sa automaticky dostane prvok poľa, do druhého sa dostane jeho číslo v poli (index) a do tretieho - samotné pole.

Syntax

let nové pole = pole.filter(function(prvok, index, pole) { kód return true alebo false });

Príklad

Poďme prefiltrovať pole, ponechajme v ňom len kladné čísla:

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

Výsledok vykonania kódu:

[5, 1, 1, 3, 4]

Príklad

Skrátime kód využitím funkcie šíp:

let arr = [-2, 5, 1, -5, -1, 1, 3, 4, -1]; let res = arr.filter(elem => { if (elem >= 0) { return true; } else { return false; } }); console.log(res);

Výsledok vykonania kódu:

[5, 1, 1, 3, 4]

Príklad

Skrátime kód využitím skrátenia logických operácií:

let arr = [-2, 5, 1, -5, -1, 1, 3, 4, -1]; let res = arr.filter(elem => { return elem >= 0; }); console.log(res);

Výsledok vykonania kódu:

[5, 1, 1, 3, 4]

Príklad

Skrátime kód využitím vlastností funkcií šíp:

let arr = [-2, 5, 1, -5, -1, 1, 3, 4, -1]; let res = arr.filter(elem => elem > 0); console.log(res);

Výsledok vykonania kódu:

[5, 1, 1, 3, 4]

Príklad

V prípade potreby je možné ako tretí parameter odovzdať samotné pole:

let res = arr.filter(function(elem, index, arr) { tu bude dostupné pole arr });

Pozri tiež

  • metódy map a forEach,
    ktoré umožňujú aplikovať funkciu na každý prvok poľa
  • metódy some a every,
    vykonávajúce kontrolu poľa
  • metódy reduce a reduceRight,
    redukujúce pole na jednu hodnotu
Slovenčina
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používame cookies na fungovanie stránky, analýzu a personalizáciu. Spracúvanie údajov prebieha v súlade s Politikou ochrany osobných údajov.
prijať všetky nastaviť odmietnuť