Равиши filter
Равиши filter имкон медиҳад, ки
элементҳои массивро филтр карда,
фақат элементҳои мувофиқи шарити муайянро боқӣ гузоред.
Равиш дар параметр функсияеро мегирад, ки
барои ҳар як элементи массив иҷро мешавад.
Равиш дар натиҷаи худ массивӣ нав бармегардонад,
ки фақат он элементҳо дохил мешаванд,
ки барои онҳо функсияи додашуда true бармегардонад.
Ба функсия се параметр фиристодан мумкин аст. Агар ин параметрҳо мавҷуда бошанд (онҳо маҷбури нестанд), пас ба якум худкор элементи массив меафтад, ба дуюм рақами он дар массив (индекс), ва ба сеюм - худи массив меафтад.
Синтаксис
let массиви нав = массив.filter(function(элемент, индекс, массив) {
код
return true ё false
});
Намуна
Биёед массивро филтр кунем, танҳо рақамҳои мусбатро дар он боқӣ гузорем:
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);
Натиҷаи иҷрои код:
[5, 1, 1, 3, 4]
Намуна
Кодро кӯтоҳ кунем, бо истифода аз функсияи тир:
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);
Натиҷаи иҷрои код:
[5, 1, 1, 3, 4]
Намуна
Кодро кӯтоҳ кунем, бо истифода аз кӯтоҳкардани амалҳои мантиқӣ:
let arr = [-2, 5, 1, -5, -1, 1, 3, 4, -1];
let res = arr.filter(elem => {
return elem >= 0;
});
console.log(res);
Натиҷаи иҷрои код:
[5, 1, 1, 3, 4]
Намуна
Кодро кӯтоҳ кунем, бо истифода аз хусусиятҳои функсияҳои тир:
let arr = [-2, 5, 1, -5, -1, 1, 3, 4, -1];
let res = arr.filter(elem => elem > 0);
console.log(res);
Натиҷаи иҷрои код:
[5, 1, 1, 3, 4]
Намуна
Дар сурати зарурӣ ба параметри сеюм метавон худи массивро дод:
let res = arr.filter(function(elem, index, arr) {
дар ин ҷо массиви arr дастрас хоҳад буд
});