Javascript Jquery名称空间函数过程不可理解

Javascript Jquery名称空间函数过程不可理解,javascript,jquery,Javascript,Jquery,我在网上搜索jquery.namespace过程。最后,我在这个示例脚本的堆栈溢出中得到了一个答案 jQuery.namespace = function() { var a=arguments, o=null, i, j, d; for (i=0; i<a.length; i=i+1) { d=a[i].split("."); o=window; for (j=0; j<d.length; j=j+1)

我在网上搜索
jquery.namespace
过程。最后,我在这个示例脚本的堆栈溢出中得到了一个答案

jQuery.namespace = function() {

    var a=arguments, o=null, i, j, d;

    for (i=0; i<a.length; i=i+1) {

        d=a[i].split(".");



        o=window;

        for (j=0; j<d.length; j=j+1) {

            o[d[j]]=o[d[j]] || {};
            o=o[d[j]];

             console.log(o); 
        }

    }
   // console.log(o); //Object {} 
    return o;
};

// definition
jQuery.namespace( 'jQuery.debug' );
jQuery.debug.test1 = function()
{
    alert( 'test1 function' );
};
jQuery.debug.test2 = function()
{
    alert( 'test2 function' );
};
// usage
jQuery.debug.test1();
jQuery.debug.test2();
jQuery.namespace=function(){
变量a=参数,o=null,i,j,d;

对于(i=0;i,函数采用的参数是要创建的名称空间列表

让我们简化它,使它只需要一个名称空间

jQuery.namespace = function(namespace) {
    var o=null, j, d;
    d=namespace.split(".");
    o=window;
    for (j=0; j<d.length; j=j+1) {
            o[d[j]]=o[d[j]] || {};
            o=o[d[j]]; 
        }
    }
    return o;
};
jQuery.namespace=函数(名称空间){
var o=零,j,d;
d=名称空间.split(“.”);
o=窗口;
对于(j=0;j
jQuery.namespace('jQuery.debug');
将重用'jQuery.debug`名称空间(如果存在),如果不存在则创建它。