Стрелочные функции в JavaScript

Стрелочные функции (Arrow Functions) — это компактный синтаксис для написания функций в JavaScript, представленный в стандарте ES6 (ECMAScript 2015). Они упрощают написание функций и имеют некоторые особенности в поведении по сравнению с обычными функциями.

Базовый синтаксис:

const func = (параметры) => {
  // тело функции
};

Если функция состоит из одной строки, можно опустить фигурные скобки {} и ключевое слово return:

const func = (параметры) => выражение;

Если параметр один, можно опустить круглые скобки ():

const func = параметр => выражение;

Если параметров нет, круглые скобки обязательны:

const func = () => выражение;

Примеры

Обычная функция:

function sum(a, b) {
  return a + b;
}

Стрелочная функция:

const sum = (a, b) => a + b;

Функция без параметров:

const greet = () => "Hello, World!";

Стрелочные функции — это мощный инструмент для написания компактного и читаемого кода. Они особенно полезны для коротких функций и случаев, когда нужно сохранить лексический контекст this. Однако в некоторых ситуациях (например, методы объектов или функции-конструкторы) лучше использовать обычные функции.