Встречается на собеседованиях • сегодня

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

Стрелочные функции (=>) имеют несколько ключевых особенностей:

  1. Нет своего this — они наследуют this из окружающего контекста (лексический this).
    javascript
    const obj = {
      name: 'Test',
      regularFunc: function() { console.log(this.name); }, // 'Test'
      arrowFunc: () => console.log(this.name) // undefined (если не strict mode, иначе ошибка)
    };
  1. Нельзя использовать как конструктор — вызов с new вызовет ошибку.

  2. Нет arguments — вместо него можно использовать rest-параметры (...args).

  3. Не имеют prototype( () => {} ).prototype === undefined.

  4. Короткий синтаксис — если тело функции одно выражение, return можно опустить:

    javascript
    const sum = (a, b) => a + b;
  5. Не подходят для методов объекта, если нужен доступ к this объекта.

  6. Неявный возврат объекта требует обертки в скобки:

    javascript
    const getObj = () => ({ key: 'value' });
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы