2013-03-24 3 views
1

Моя библиотека является IIFE так:IIFE внутри IIFE. Вопросы? Представление?

(function() { 

    win.global = global; 

}()); 

внутри этой библиотеки у меня есть мой код организован в виде модулей, которые также выглядят следующим образом:

var foo1 = (function() { 
    var publik = {}, 
     private = {}; 
    return publik; 
}()); 
._extend(global, foo1); 

где есть Foo для каждого модуля.

Есть ли проблемы с наличием IIFE внутри IIFE?

Большинство основных библиотек инкапсулированы в IIFE, но оттуда они организуют свой код в простые литералы объектов NOT IIFE.

Вот почему я спрашиваю/интересуюсь.

Я делаю это, потому что мне нравятся мои модули с частными членами, и этот шаблон позволяет это.

+0

Нет, не должно быть никаких проблем. –

+0

Просто обычные служебные вызовы функции. Независимо от того, является ли это IIFE или функцией, которую вы определили ранее, не имеет значения (пока вы вызываете ее только один раз). –

+0

Я действительно думаю, что это вопрос стиля. –

ответ

4

В этом нет ничего плохого.

Выражения функции Javascript могут быть вложены сколь угодно глубоко.

Смежные вопросы