Какова цель запуска точки с запятой в начале JavaScript? [дубликат]


Возможные Дубликаты:
что делает ведущая точка с запятой в библиотеках JavaScript?

Я заметил, что многие плагины jQuery начинаются с

;(function(){ /* something in here */ })();

мне просто интересно, что такое начальная точка с запятой, а также пустые скобки в конце.

2 92

2 ответа:

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

() в конце выполняет функцию. Это создает закрытие. Частные переменные и методы могут быть объявлены в рамках этой функции невозможно получить доступ извне скрипта.

такая конструкция :

(function(){ /* something in here */ })()

используется для создания новой области в JavaScript.

дополнительная информация о области действия здесь.

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