Хм, ок, а такой вопрос, совсем наверное из основ для чайников:
var Car = (function(){
...
})
что означает такая запись?
Var Car = {} - это объект
fucntion Test(){}
Var Car = Test - это функция
даже пусть так:
Var Car = Test(){} тоже функция (наверное, не проверял),
но что означают круглые скобки вне функции (Test(){})?
Насколько я понимаю это должно быть как то с видимостью переменных связано?
Я к чему спрашиваю, у меня есть следующий код:
(напишу абстрактно, так быстрее и понятнее. Создаю свое собственное контекстное меню)
внешний.js
1.Документ готов:
2.Массив с пунктами и подпунктами Меню
3.Вспомогательные переменные (скорость появления и т.п.)
4.Создать несколько элементов div по клику на которые делать функцию Action
5.Вспомогательные функции нужные только для создания div
6.Функция Action
7.Отключаем контекстное меню
8.Добавляем обработчик правого клика мышки
В результате я хочу получить собственную контекстую менюшку, и возможность ее редактировать в стиле:
MyMenu.Size(30).Speed(10).AddMenu("Creat","Main"). AddMenu("Delete","Main") и т.п.
Как мне лучше поступить? Насколько я понимаю по примеру из вики мне нужно поступить так:
...
3.Вспомогательные переменные (скорость появления и т.п.)
var MyMenu=(function(){
функции обработки переменных (добавление изменение и т.п.)
})
4.Создать несколько элементов div по клику на которые делать
...
Или же так:
...
1.Документ готов:
var MyMenu=(function(){
2.Массив с пунктами подпунктами Меню
3.Вспомогательные переменные (скорость появления и т.п.)
функции обработки переменных (добавление изменение и т.п.)
})
4.Создать несколько элементов div по клику на которые делать
...
Т.е. Если я создам свои переменные внутри функции MyMenu я же их не увижу снаружи, а значит придется и все функции создания div и Action засовывать внутрь функции MyMenu, а мне кажется это не правильно.