105 of 264 menu

Metoda filter

Metoda filter omogoča filtriranje elementov polja, tako da ohranimo le tiste elemente, ki ustrezajo določenemu pogoju. Metoda kot parameter prejme funkcijo, ki se izvede za vsak element polja. Kot rezultat metoda vrne novo polje, ki bo vključevalo le tiste elemente, za katere podana funkcija vrne true.

Funkciji lahko podamo tri parametre. Če ti parametri obstajajo (niso obvezni), potem bo prvi samodejno prejel element polja, drugi bo prejel njegovo številko v polju (indeks), tretji pa bo prejel samo polje.

Sintaksa

let novoPolje = polje.filter(function(element, indeks, polje) { koda return true ali false });

Primer

Filtrirajmo polje tako, da v njem ohranimo le pozitivna števila:

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

Rezultat izvajanja kode:

[5, 1, 1, 3, 4]

Primer

Skrajšajmo kodo z uporabo funkcije s puščico:

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

Rezultat izvajanja kode:

[5, 1, 1, 3, 4]

Primer

Skrajšajmo kodo z uporabo skrajšanja logičnih operacij:

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

Rezultat izvajanja kode:

[5, 1, 1, 3, 4]

Primer

Skrajšajmo kodo z uporabo značilnosti funkcij s puščico:

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

Rezultat izvajanja kode:

[5, 1, 1, 3, 4]

Primer

Po potrebi lahko v tretji parameter podamo polje samo:

let res = arr.filter(function(elem, index, arr) { tukaj bo polje arr dostopno });

Glejte tudi

  • metodi map in forEach,
    ki omogočata uporabo funkcije za vsak element polja
  • metodi some in every,
    ki izvajata preverjanje polja
  • metodi reduce in reduceRight,
    ki zložita polje v eno vrednost
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
Za delovanje spletnega mesta, analitiko in personalizacijo uporabljamo piškotke. Obdelava podatkov poteka v skladu s Politiko zasebnosti.
sprejmi vse nastavi zavrni