Применение стрелочных функций в JavaScript
Особое преимущество стрелочные функции имеют
в качестве коллбэков. Давайте посмотрим на
примере, на сколько упрощается код в таком
случае. Пусть для примера у нас есть следущая
функция filter
:
function filter(arr, callback) {
let res = [];
for (let elem of arr) {
if ( callback(elem) === true ) {
res.push(elem);
}
}
return res;
}
Вызовем эту функцию, передав ей коллбэк:
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);
Дана следующая функция с коллбэком:
let result = filter([1, 2, 3, 4, 5], function(elem) {
if (elem > 0) {
return true;
} else {
return false;
}
});
Упростите коллбэк через стрелочную функцию.