Что в javascript значит синтакс ( function(){...} )( param1, param2); ?

Пользователь

от hobart.rath , в категории: JavaScript , год назад

Что в javascript значит синтакс ( function(){...} )( param1, param2); ?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от jaren , год назад

@hobart.rath 

Данный синтаксис называется самовызывающейся (self-invoking) функцией или функцией-оберткой (wrapper function).


В данном случае мы создаем анонимную функцию, заключенную в скобки (function(){...}), а затем сразу после нее вызываем ее, передавая два параметра (param1, param2), также заключенные в скобки.


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


Пример использования данного синтаксиса:

1
2
3
(function(param1, param2) {
  console.log(param1 + param2);
})(3, 4); // результат: 7


Здесь мы передаем два параметра в функцию, которая складывает их и выводит результат в консоль.