У меня есть файл javascript с большим количеством глобальных объектов. То есть, у меня есть много следующих видов кода происходит:Размещение содержимого файла * .js в объекте
var foo = 5;
var bar = "string";
var getStuff = function() {
//...getStuff
}
Вопрос: Что это самый простой способ для меня, чтобы поместить полноту этого файла в объект?
Мне кажется, мои варианты следующим образом:
Wrap весь файл в
var Object = { ... };
. Проблема в том, что я должен изменить синтаксис того, как объявляются переменные и функции.Вручную префикс
Object.xxx
перед каждой декларацией. Это также много ручной работы и делает вещи немного подробными.
Есть ли лучший способ? Или, если нет, есть ли причина предпочитать (1) или (2)?
Это не класс. Это объект. JavaScript не имеет реальных классов. Кроме того, то, что вы ищете, - это [сразу вызываемое выражение функции] (http://en.wikipedia.org/wiki/Immediately-invoked_function_expression). –
Вы правы - я изменил терминологию от «класса» до «объекта». – George
Идти с [IIFE] (http://stackoverflow.com/questions/8228281/what-is-the-function-construct-in-javascript). Aadit упомянул, вы можете попробовать [раскрывающий модуль] (http: // stackoverflow.com/questions/5647258/how-to-use-revealing-module-pattern-in-javascript). –