Metoda filter
Metoda filter lejon filtrimin
e elementeve të vargut, duke lënë vetëm ato
që i përshtaten një kushti të caktuar.
Metoda merr në parametër një funksion, i cili
do të ekzekutohet për çdo element të vargut.
Si rezultat, metoda kthen një varg të ri,
në të cilin do të përfshihen vetëm ata elementë
për të cilët funksioni i transmetuar kthen true.
Në funksion mund të transmetohen tre parametra. Nëse këto parametra ekzistojnë (ato nuk janë të detyrueshme), atëherë në të parën automatikisht do të vendoset elementi i vargut, në të dytën do të vendoset numri i tij në varg (indeksi), dhe në të tretën - vetë vargu.
Sintaksa
let vargu i ri = vargu.filter(function(elementi, indeksi, vargu) {
kodi
return true ose false
});
Shembull
Le të filtrojmë vargun, duke lënë në të vetëm numrat pozitivë:
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);
Rezultati i ekzekutimit të kodit:
[5, 1, 1, 3, 4]
Shembull
Le ta shkurtojmë kodin, duke përdorur funksionin shigjetor:
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);
Rezultati i ekzekutimit të kodit:
[5, 1, 1, 3, 4]
Shembull
Le ta shkurtojmë kodin, duke përdorur shkurtimin e operacioneve logjike:
let arr = [-2, 5, 1, -5, -1, 1, 3, 4, -1];
let res = arr.filter(elem => {
return elem >= 0;
});
console.log(res);
Rezultati i ekzekutimit të kodit:
[5, 1, 1, 3, 4]
Shembull
Le ta shkurtojmë kodin, duke përdorur veçoritë e funksioneve shigjetor:
let arr = [-2, 5, 1, -5, -1, 1, 3, 4, -1];
let res = arr.filter(elem => elem > 0);
console.log(res);
Rezultati i ekzekutimit të kodit:
[5, 1, 1, 3, 4]
Shembull
Nëse është e nevojshme, në parametrin e tretë mund të transmetohet vetë vargu:
let res = arr.filter(function(elem, index, arr) {
këtu do të jetë i disponueshëm vargu arr
});