Коллизия нотации "(function)();" в JavaScript или почему JavaScript разработчик будет ставить точку с запятой перед (function)();
Нотацию (function)(); в JavaScript всегда надо начинать с точки с запятой. Это защитит от трудно определимой ошибки в интерпретации кода JavaScript-движком. Нотация ( function )(); в JavaScript чаще всего применяется в следующих случаях: когда вы хотите ограничить видимость локальных переменный и поиграть с замыканиями (closures), при этом вызывая немедленное выполнение. когда в проекте используется несколько JavaScript фреймворков и они бодаются за переменную по имени $. Эта нотация помогает гарантированно использовать переменную $, независимо от будущих изменений на сайте. Пример: ;( function ($) { /* do something*/ } )( jQuery ); Ниже код, объясняющий почему нужно использовать точку с запятой вначале. function f1(inp) { alert("f1 - " + inp); } // Ошибки не будет, все в порядке. var f2 = function (inp) { alert("f2 - " + inp); } ; (f1)("2"); // Если следующую строку не завершить точкой с запятой, будет ошибка. var f3 = function (in...