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

Существует третий и более лаконичный способ объявить переменную. Такой способ называется стрелочные функции и выглядят примерно вот так

let plus = (a, b) => a + b;

console.log(1 + 2); // Вернет 3

Такой код создает функцию plus которая принимает значения a и b затем в правой части выполняется expression выполняется и возвращает значение

По другому можно сказать что это упрощенная версия если бы мы объявили функцию через let

Вот особенности стрелочных функций

  1. Короткий синтаксис — меньше кода, читабельнее
// Обычная
const sum = function(a, b) { return a + b; };
// Стрелочная
const sum = (a, b) => a + b;

Нет своего this - берёт this из окружающего контекста

Нет arguments используй rest параметры

const showAll = (...args) => console.log(args);

Нельзя использовать как конструктор - нет new

Ошибка: new (() => {})