Я новичок в мире javascript. Я анализирую код, описанный here, чтобы избежать загрязнения на глобальном уровне при написании расширения Firefox.
Когда кодО регистрации пространства имен в javascript
1. // Namespace registration
2. this.ns = function(fn) {
3. var ns = {};
4. namespaces.push(fn, ns);
5. return ns;
6. };
выполняет я не понимаю:
1) почему код объявить нс = {} в строке 3
2) почему код возвратные нс на линии 5
3) какая функция принимает возвращенную ns {} и как эта функция будет ее использовать
4) ns {} всегда одно и то же (?) Для каждого зарегистрированного пространства имен, поэтому почему в массиве namespaces вместе с fn и затем предоставляется, когда треска e выполняет fn.apply (ns), поскольку каждый раз он будет отличаться?
Извините за мой бедный английский и заблаговременно за вашу помощь.
Спасибо! Я попытаюсь повторить анализ кода с дополнительной информацией, которую вы мне дали. – mty
Добро пожаловать, если у вас появятся дополнительные вопросы, я буду рад помочь. –