Стрелочные функции (Arrow Function)
Синтаксис стрелочной функции:
const multiply = (a, b) => {
return a * b;
};
Она состоит из двух частей: параметры в скобках, затем стрелка =>, и тело функции в фигурных скобках.
Если параметр один — скобки можно опустить:
const square = x => x * x;
Если тело функции — одно выражение — фигурные скобки и return можно опустить:
const formatName = (first, last) => first + ' ' + last;
Это называется краткой формой. Она возвращает результат выражения автоматически.
Стрелочные функции часто называют анонимными, потому что они не имеют имени в своём определении. Их имя — это переменная, в которую они присваиваются.
Когда использовать
Стрелочные функции идеальны для простых преобразований и коллбэков — особенно в мобильных приложениях, где код должен быть лаконичным.
Пример: обработка списка задач
const tasks = [
{ id: 1, title: 'Починить экран', completed: false },
{ id: 2, title: 'Обновить приложение', completed: true }
];
const pendingTasks = tasks.filter(task => !task.completed);
console.log(pendingTasks); // [{ id: 1, title: 'Починить экран', completed: false }]
Здесь стрелочная функция task => !task.completed передаётся в filter. Она короткая, читаемая и выполняет одну задачу — проверяет, не выполнена ли задача.
Пример: обработчик клика в React Native или веб-интерфейсе
button.addEventListener('click', () => {
showNotification('Данные сохранены');
});
Важно: стрелочные функции не имеют собственного
this. Это полезно в классах и коллбэках, но не всегда очевидно для новичков — пока достаточно знать, что для простых операций они удобны, а для сложной логики сthisлучше использовать функциональные выражения или объявления.