Если это единственное приложение, в котором вы собираетесь использовать эту переменную, подход Феликса превосходен. Однако, если вы пишете плагин jQuery, рассмотрите «пространство имен» (подробности о кавычках позже ...) переменных и функций, необходимых для объекта jQuery. Например, в настоящее время я работаю над всплывающим меню jQuery, которое я назвал miniMenu. Таким образом, я определил «пространство имен» miniMenu
в jQuery, и я помещаю все туда.
Причина, по которой я использую кавычки, когда говорю о пространствах имен javascript, заключается в том, что в действительности они не являются пространствами имен в обычном смысле. Вместо этого я просто использую объект javascript и помещаю все свои функции и переменные в качестве свойств этого объекта.
Кроме того, для удобства я обычно разделяю пространство имен плагина с i
пространством имен для вещей, которые должны использоваться только внутри плагина, чтобы скрыть его от пользователей плагина.
Вот как это работает:
// An object to define utility functions and global variables on:
$.miniMenu = new Object();
// An object to define internal stuff for the plugin:
$.miniMenu.i = new Object();
Теперь я могу просто делать $.miniMenu.i.globalVar = 3
или $.miniMenu.i.parseSomeStuff = function(...) {...}
всякий раз, когда мне нужно что-то сохранить глобально, и я все еще держу это вне глобального пространства имен.