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

Какие знаешь способы объявления функции

В JavaScript есть несколько способов объявления функций:

  1. Function Declaration (поднимается вверх области видимости):
javascript
function sum(a, b) {
  return a + b;
}
  1. Function Expression (не поднимается):
javascript
const sum = function(a, b) {
  return a + b;
};
  1. Arrow Function (ES6, нет своего this):
javascript
const sum = (a, b) => a + b;
  1. Function Constructor (не рекомендуется из-за проблем безопасности):
javascript
const sum = new Function('a', 'b', 'return a + b');
  1. Метод в объекте:
javascript
const obj = {
  sum(a, b) {
    return a + b;
  }
};
  1. Generator Function (ES6):
javascript
function* gen() {
  yield 1;
}

Различия в поведении касаются поднятия (hoisting), контекста this и синтаксиса.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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