Метод filter
filter методаси массив элементларини фильтрлаб, фақат муайян шартга мос келадиган элементларни колдириш имконини беради.
Метод параметр сифатида хар бир массив элементи учун ишлайдиган функцияни олади.
Метод ўзининг натижаси сифатида янги массивни кайтаради, унга фақат узатилган функция true кайтарган элементлар киради.
Функцияга учта параметр узатиш мумкин. Aгар бу параметрлар мавжуд бўлса (улар мажбурий эмас), у холда биринчисига автомат тарзида массив элементи, иккинчисига унинг массивдаги номери (индекс), учинчисига эса массивнинг ўзи тушади.
Синтаксис
javascriptlet янги массив = массив.filter(function(элемент, индекс, массив) {
код
return true ёки false
});
Мисол
{Kелинг, массивни фильтрлаб, унда фақат мусбат сонлар колдирайлик:}
javascriptlet 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);
Кодни ишга тушириш натижаси:
javascript[5, 1, 1, 3, 4]
Мисол
Кодни қисқартамириб, стрелка функциядан фойдаланамиз:
javascriptlet 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);
Кодни ишга тушириш натижаси:
javascript[5, 1, 1, 3, 4]
Мисол
Кодни қисқартамириб, логик амалларни қисқартмасидан фойдаланамиз:
javascriptlet arr = [-2, 5, 1, -5, -1, 1, 3, 4, -1];
let res = arr.filter(elem => {
return elem >= 0;
});
console.log(res);
Кодни ишга тушириш натижаси:
javascript[5, 1, 1, 3, 4]
Мисол
Кодни қисқартамириб, стрелка функцияларнинг хусусиятларидан фойдаланамиз:
javascriptlet arr = [-2, 5, 1, -5, -1, 1, 3, 4, -1];
let res = arr.filter(elem => elem > 0);
console.log(res);
Кодни ишга тушириш натижаси:
javascript[5, 1, 1, 3, 4]
Мисол
Зарурат бўлган тақдирда учинчи параметрга массивнинг ўзини узатиш мумкин:
javascriptlet res = arr.filter(function(elem, index, arr) {
бу ерда arr массивига доступ бўлади
});