Контекст выполнения (this): В стрелочных функциях значение this берется из окружающего контекста, а не создается новым.
Невозможность использования в качестве конструкторов: Стрелочные функции не могут быть использованы для создания новых объектов с помощью оператора new. Они не имеют своего собственного this, поэтому не могут быть вызваны как конструкторы.
Отсутствие своего собственного контекста выполнения: В обычных функциях можно определять свои собственные переменные arguments, super, и new.target. В стрелочных функциях такой возможности нет.
Стрелочные функции не могут быть использованы как конструкторы для создания объектов с помощью оператора new. (не ведут себя как конструктор для объектов)
No prototype property: ts
function greet(name: string): void {
console.log(`Hello, ${name}!`);
}
console.log(greet.prototype); // {constructor: ƒ greet}
Методы объекта prototype: Нет call, apply и bind, которые можно использовать для изменения контекста this
No super keyword
No explicit return
No yield keyword: Arrow functions cannot be used as generators and do not have access to the yield keyword.