Функция

Функция это отрывок кода который может быть вызван из другого кода или вызван собой, или это variable которая ссылается на функцию. Когда функция вызвана, аргументы переданы в функцию как вход, и функция может необязательно вернуть вывод. Функция в JavaScript это object.

Имя функции это identifier объявлённый как часть объявления функции или выражения функции. Имя функции scope (en-US) зависит от того является ли имя функции объявлением или выражением.

Различные типы функций

Анонимная функция это функция без имени:

function () {}

Именованная функция это функция с именем:

function foo() {}

Внутренняя функция это функция внутри другой функции  (square в данном случае). Внешняя функция это функция содержащая функцию (addSquares в данном случае):

function addSquares(a,b) {
   function square(x) {
      return x * x;
   }
   return square(a) + square(b);
}

Рекурсивная функция это функция которая вызывает саму себя. См recursion (en-US).

function loop(x) {
   if (x >= 10)
      return;
   loop(x + 1);
}

Immediately Invoked Function Expressions (IIFE) это функция которая вызывается прямо после того как функция загружена в компилятор браузера. Способ объявления IIFE это путём размещения левых и правых круглых скобок в конце объявления функции.  В этом типе выражении функций много преимуществ, но это выходит за рамки курса. Если вы хотите узнать больше об IFFE, проверьте следующую страницу на Википедии.

https://en.wikipedia.org/wiki/Immediately-invoked_function_expression

Examples:

​function foo(){
 console.log('Здравствуй Foo');
}();


(function foo() {
​ console.log('Здравствуй Foo');
}());


(function food(){
    console.log('Здравствуй Foo');
})();

 

 

Узнайте больше

Технический справочник