მეთოდი filter
მეთოდი filter საშუალებას აძლევს მასივის ელემენტები გაფილტროს,
დატოვოს მხოლოდ ის ელემენტები, რომლებიც
განსაზღვრულ პირობას აკმაყოფილებენ.
მეთოდი პარამეტრად იღებს ფუნქციას, რომელიც
შესრულდება მასივის თითოეული ელემენტისთვის.
მეთოდი თავის შედეგად აბრუნებს ახალ
მასივს, რომელშიც მხოლოდ ის ელემენტები შევლენ,
რომლებისთვისაც გადაცემულმა ფუნქციამ დააბრუნა true.
ფუნქციას შეგიძლიათ გადასცეთ სამი პარამეტრი. თუ ეს პარამეტრები არსებობს (ისინი არ არის სავალდებულო), მაშინ პირველში ავტომატურად ჩავა ელემენტი მასივის, მეორეში ჩავა მისი ნომერი მასივში (ინდექსი), ხოლო მესამეში - თავად მასივი.
სინტაქსი
let axali masivi = masivi.filter(function(elementi, indeqsi, masivi) {
kodi
return true an 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) {
aq iqneba damtkmebeli masivi arr
});