ისრისებრი ფუნქციების გამოყენება JavaScript-ში
ისრისებრ ფუნქციებს განსაკუთრებული უპირატესობა აქვთ
როგორც callback-ებში. მოდით ვნახოთ მაგალითზე, რამდენად
გამარტივდება კოდი ასეთ შემთხვევაში. მაგალითისთვის გვქონდეს
შემდეგი ფუნქცია filter:
function filter(arr, callback) {
let res = [];
for (let elem of arr) {
if ( callback(elem) === true ) {
res.push(elem);
}
}
return res;
}
გამოვიძახოთ ეს ფუნქცია, მივაწოდოთ მას callback:
let result = filter([1, 2, 3, 4, 5], function(elem) {
if (elem % 2 === 0) {
return true;
} else {
return false;
}
});
მოდით ახლა გავამარტივოთ ჩვენი ფუნქცია.
პირველ რიგში, მოდით დავაღწიოთ
if კონსტრუქციას და დავწეროთ პირობა უბრალოდ
=== ოპერატორის მეშვეობით:
let result = filter([1, 2, 3, 4, 5], function(elem) {
return elem % 2 == 0;
});
ახლა ჩავანაცვლოთ ჩვეულებრივი ფუნქცია ისრისებრით:
let result = filter([1, 2, 3, 4, 5], elem => elem % 2 == 0);
მოცემულია შემდეგი ფუნქცია callback-ით:
let result = filter([1, 2, 3, 4, 5], function(elem) {
if (elem > 0) {
return true;
} else {
return false;
}
});
გაამარტივეთ callback ისრისებრი ფუნქციის მეშვეობით.