[Tips]:JavaScript命名空间

本文涉及的产品
应用型负载均衡 ALB,每月750个小时 15LCU
网络型负载均衡 NLB,每月750个小时 15LCU
传统型负载均衡 CLB,每月750个小时 15LCU
简介:

项目中,我们经常这样写JS, function(){}; 但函数多了不好管理且容易冲突,我们可以使用如下的方法来定义命名空间。 

   1: Namespace = new Object();
   2:  
   3: // 全局对象仅存在register函数,参数为名称空间全路径LB.MAP
   4: Namespace.register = function(fullNameSpace) {
   5:    // 将命名空间按点分成几个部分,如LB.MAP
   6:    var nsArray = fullNameSpace.split('.');
   7:    var sEval = "";
   8:    var sNS = "";
   9:    for (var i = 0; i < nsArray.length; i++) {
  10:        if (i != 0) sNS += ".";
  11:        sNS += nsArray[i];
  12:        // 依次创建构造命名空间对象(假如不存在的话)                  
  13:        sEval += "if (typeof(" + sNS + ") == 'undefined') " + sNS + " = new Object();"
  14:    }
  15:    if (sEval != "") eval(sEval);
  16: }
  17:  
  18: // 注册命名空间LB.MAP, LB.UI
  19: Namespace.register("LB.MAP");
  20: Namespace.register("LB.UI");
  21:  
  22: //声明类GoogleMap
  23: LB.MAP.GoogleMap = function(zoom, center) {
  24:    this.zoom = zoom;
  25:    this.center = center;
  26: }
  27:  
  28: // GoogleMap类添加一个公共方法show()
  29: LB.MAP.GoogleMap.prototype.Display = function() {
  30:    alert("google map zoom is"+ this.zoom+" and center is "+this.center);
  31: }
  32:  
  33: var map = new LB.MAP.GoogleMap("4X", 20.00);
  34:  
  35: // 给对象上添加方法
  36: map.MoveLeft = function() { alert("I move left"); };
  37:  
  38: map.Display();
  39: map.MoveLeft();
本文转自敏捷的水博客园博客,原文链接http://www.cnblogs.com/cnblogsfans/archive/2009/06/17/1505227.html如需转载请自行联系原作者

王德水
相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
相关文章
|
JavaScript 前端开发
JavaScript标识符(命名规则)
JavaScript标识符(命名规则)
144 0
|
JavaScript 前端开发
js中的命名规则
js中的命名规则
138 0
|
JavaScript 前端开发
JavaScript变量命名规则及关键字详解
JavaScript变量命名规则及关键字详解
261 1
|
JavaScript 前端开发
JavaScript的命名规则
JavaScript的命名规则
358 0
|
JavaScript 前端开发
js中的命名规则
js中的命名规则
|
JavaScript 前端开发
JavaScript变量的小驼峰命名法
JavaScript中变量的小驼峰命名法,一般指的是JavaScript的变量的名称或函数的名称采用大小写字母搭配的方式进行命名,比如:folowerName、studentAge,其中N和A是大写的。
158 2
|
JavaScript
js命名规则
js命名规则
189 0
|
JavaScript 前端开发 开发者
JS变量命名的方法
JS变量命名的方法
141 0
|
缓存 前端开发 JavaScript
简单总结了10个JavaScript代码优化小tips
相同的功能采用不同的代码实现所需要的运行时间也不会相同,这里简单总结了10个JavaScript代码优化的小技巧,可以增加这么一nainai的运行速度
183 0
|
JavaScript
精通Vue.js系列 │ 命名路由
路由可以通过name属性来设置名字,这样便于在其他场合引用路由。
180 0
精通Vue.js系列 │ 命名路由

热门文章

最新文章