首页 > 代码库 > JavaScript 全局变量命名空间生成函数
JavaScript 全局变量命名空间生成函数
1 <script type="text/javascript"> 2 var GLOBAL = {}; 3 GLOBAL.namespace = function(str){ 4 var arr = str.split("."),o = GLOBAL; //定义初始父命名空间名为 GLOBAL; 5 for (i=(arr[0]=="GLOBAL")?1:0; i<arr.length; i++) { 6 o[arr[i]] = o[arr[i]]||{}; //生成子命名空间 7 o = o[arr[i]]; //将子命名空间定义为父命名空间 8 } 9 }10 </script>
使用方式:
1 <script type="text/javascript"> 2 3 /*执行完此方法后,此时的命名空间有:GLOBAL = {},GLOBAL.Leon = {},第一次循环生成 GLOBAL.Leon.Wang = {},第二次循环生成*/ 4 GLOBAL.namespace("Leon.Test"); 5 6 GLOBAL.Leon.param1= "param1"; 7 8 GLOBAL.Leon.Test.name = "hello"; 9 GLOBAL.Leon.Test.Speak = function(){10 ...11 };12 13 </script>
注:
为了避免参数命名冲突,我们引入了此方法,GLOBAL定义为全局变量,每个工程师定义有自己的二级命名空间名,如,Leon,James,A,B...,在此基础上工程师可以自己添加三级名称,以此类推...如Leon定义了一个“Test”,则可调用 GlOBAL.namespace(“Leon.Test”) 去生成所需的命名空间。
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。