Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Помогите разобраться с синтаксисом (https://javascript.ru/forum/misc/15428-pomogite-razobratsya-s-sintaksisom.html)

vic 26.02.2011 15:09

Помогите разобраться с синтаксисом
 
В библиотеках folowplayer, jQuery и т.д. встречаю следующую конструкцию (с нее начинается библиотека):
(function(){function g(o){....}function k(q){....}...)();
или
(function($) {......})(jQuery);

Не могу понять с смысл скобок, которые окржают объявление первой безымянной функции (в теле которой объявлено еще масса функций ) и последних пустых или непустых скобок

micscr 26.02.2011 15:27

Цитата:

(function(){function g(o){....}function k(q){....}...)();
Такая запись определяет функции в своем пространстве имен. Чтобы не засорять глобальное. "Внешняя" функция выполнится и в ней определятся "Внутренние" функции.
Например:
(function(){
  x = function g(){alert('5')}
})()
x();


Цитата:

(function($) {......})(jQuery);
то же самое, только параметр передается - jquery. Плагин расширяет jquery.

vic 26.02.2011 16:12

Спасибо за быстрый ответ!
Примерно так я и предполагал, но непонятна сама синтаксическая конструкция. Подскажите, где она описана?
И какой смысл в этом случае могут иметь параметры (...)(jQuery); ?

Спасибо, с уважением vic.

micscr 26.02.2011 16:26

http://docs.jquery.com/Plugins/Authoring

vic 26.02.2011 16:42

Большое спасибо!!!


Часовой пояс GMT +3, время: 01:10.