105 of 264 menu

Metod filter

Metod filter omogućava filtriranje elemenata niza, ostavljajući samo one elemente koji zadovoljavaju određeni uslov. Metod kao parametar prima funkciju, koja će se izvršiti za svaki element niza. Metod kao rezultat vraća novi niz, u koji će ući samo oni elementi, za koje prosleđena funkcija vraća true.

U funkciju se mogu proslediti tri parametra. Ako ovi parametri postoje (nisu obavezni), onda će u prvi automatski biti prosleđen element niza, u drugi će biti prosleđen njegov broj u nizu (indeks), a u treći - sam niz.

Sintaksa

let noviNiz = niz.filter(function(element, index, niz) { kod return true ili false });

Primer

Hajde da profiltriramo niz, ostavivši u njemu samo pozitivne brojeve:

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 izvršavanja koda:

[5, 1, 1, 3, 4]

Primer

Skratićemo kod, koristeći streličastu funkciju:

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 izvršavanja koda:

[5, 1, 1, 3, 4]

Primer

Skratićemo kod, koristeći skraćenje logičkih operacija:

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

Rezultat izvršavanja koda:

[5, 1, 1, 3, 4]

Primer

Skratićemo kod, koristeći osobine streličastih funkcija:

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

Rezultat izvršavanja koda:

[5, 1, 1, 3, 4]

Primer

Po potrebi se u treći parametar može proslediti sam niz:

let res = arr.filter(function(elem, index, arr) { ovde će biti dostupan niz arr });

Pogledajte takođe

  • metode map i forEach,
    koje omogućavaju primenu funkcije na svaki element niza
  • metode some i every,
    koje vrše proveru niza
  • metode reduce i reduceRight,
    koje svode niz na jednu vrednost
Srpski
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Koristimo kolačiće za rad sajta, analitiku i personalizaciju. Obrada podataka se vrši u skladu sa Politikom privatnosti.
prihvati sve podesi odbij