/
Вопросы и ответы
/
JavaScript
/

Как передать функцию в функцию js

Как передать функцию в функцию js

4 года назад

Человек-Молекула

Ответы

7

Функция в функцию передаётся как обычный параметр, так же, как это работает с любыми другими значениями. Например:

const sayHello = () => {
  console.log('Hello!');
};

const execFunc = (func) => {
  func();
};

execFunc(sayHello); // => Hello!

Частая ошибка, когда новички передают не саму функцию, а вызов функции. Будьте внимательны, при таком подходе, сначала вычислиться то, что мы передаём, затем это значение попадёт в функцию:

const sayHello = () => {
  console.log('Hello!');
};

const execFunc = (func) => {
  func();
};

execFunc(sayHello()); // => TypeError: func is not a function

Ошибка возникает, потому что в функцию execFunc() передаётся не функция, а вызов функции sayHello().

4 года назад

Ivan Gagarinov

+7 800 100 22 47

бесплатно по РФ

+7 495 085 21 62

бесплатно по Москве

108813 г. Москва, вн.тер.г. поселение Московский,
г. Московский, ул. Солнечная, д. 3А, стр. 1, помещ. 20Б/3
ОГРН 1217300010476
ИНН 7325174845