Извлечение функций из массива с помощью деструктуризации

Получите массив вызовом obtain, извлеките обе функции деструктуризацией и вызовите каждую отдельно. Само присваивание функции не запускает.

Короткий ответ

Что ответить на собеседовании

Получите массив вызовом obtain, извлеките обе функции деструктуризацией и вызовите каждую отдельно. Само присваивание функции не запускает.

Подробный разбор

Ответ с пояснениями

Условие

Необходимо продемонстрировать, как вызвать функции, находящиеся внутри массива, который возвращается из другой функции.

function obtain() {
  return [
    () => { console.log('Hello') },
    () => { console.log('Hello_2') }
  ];
}

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

Ответ

Получите массив вызовом obtain, извлеките обе функции деструктуризацией и вызовите каждую отдельно. Само присваивание функции не запускает.

const [sayHello, sayHelloAgain] = obtain();
sayHello();       // Hello
sayHelloAgain();  // Hello_2

obtain выполняется один раз и возвращает два функциональных значения. Деструктуризация сохраняет их в локальные переменные. Альтернативный вариант — const callbacks = obtain(); callbacks0; callbacks1;. Порядок сообщений определяется порядком явных вызовов.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее