В JavaScript нет предопределенных методов для использования пространств имен. В JavaScript мы должны создавать свои собственные методы для определения пространств имен. Вот процедура, которой мы следуем в технологиях Oodles.
Зарегистрируйте NameSpace
Ниже приводится функция для регистрации пространства имен
//Register NameSpaces Function
function registerNS(args){
var nameSpaceParts = args.split(".");
var root = window;
for(var i=0; i < nameSpaceParts.length; i++)
{
if(typeof root[nameSpaceParts[i]] == "undefined")
root[nameSpaceParts[i]] = new Object();
root = root[nameSpaceParts[i]];
}
}
Чтобы зарегистрировать пространство имен, просто вызовите вышеупомянутую функцию с аргументом в качестве пространства имен, разделенного '.'
(точка).
Например
Пусть ваше приложение называется oodles. Вы можете создать пространство имен, используя метод
registerNS("oodles.HomeUtilities");
registerNS("oodles.GlobalUtilities");
var $OHU = oodles.HomeUtilities;
var $OGU = oodles.GlobalUtilities;
В основном это создаст вашу структуру NameSpaces, как показано ниже в бэкэнде:
var oodles = {
"HomeUtilities": {},
"GlobalUtilities": {}
};
В приведенной выше функции вы зарегистрировали пространство имен с именами "oodles.HomeUtilities"
и "oodles.GlobalUtilities"
. Чтобы вызвать эти пространства имен, мы создаем переменную, то есть var $OHU
и var $OGU
.
Эти переменные - не что иное, как псевдоним для инициализации пространства имен.
Теперь, когда бы вы ни объявили функцию, которая принадлежит HomeUtilities
, вы объявите ее следующим образом:
$OHU.initialization = function(){
//Your Code Here
};
Выше приведена инициализация имени функции, и она помещается в пространство имен $OHU
. и вызывать эту функцию в любом месте файлов сценария. Просто используйте следующий код.
$OHU.initialization();
Аналогично, с другими пространствами имен.
Надеюсь, это поможет.