JS定义命名空间

var Common = Common || {};
Common.defineNS = function (nsString) {
    var parts = nsString.split(‘.‘),
        parent = Common,
        i;
    if (parts[0] === "Common") {
        parts = parts.slice(1);
    }
    for (i = 0; i < parts.length; i++) {
        if (typeof parent[parts[i]] === "undefined") {
            parent[parts[i]] = {};
        }
        parent = parent[parts[i]];
    }

    return parent;
}
时间: 2024-10-18 23:29:26

JS定义命名空间的相关文章

js 定义像java一样的map方便取值

js 定义像java一样的map方便取值. 百度有位大神说"js对象本身就是一种Map结构",这真是一段让人欢天喜地的代码. <script> //定义一个全局map var map = {}; var key0 = '0'; var key1 = '1'; map[key0] = '0-真实报文'; map[key1] = '1-虚拟报文'; //row 获取这行的值 ,index 获取索引值 function testJsMap(key){ //如果遍历map for(

JS定义类及对象

JS定义类及对象 1.工厂方式 <script type="text/javascript"> function createObject(name){ var p = new Object(); p.name=name; p.say = function(){alert(p.name+'ff');} return p; } var p1 = createObject("p1"); var p2 = createObject("p2"

JS多级命名空间

JS多级命名空间 JavaScript不像C#或Java,有专门的namespace和package语法支持,当JS复杂到一定程度,尤其是引用大量的第三方JS框架和类库之后,命名冲突就会成为一个严重的问题,因此使用JS自己的变通方式建立命名空间很重要. 最简单的实现命名空间的方法,代码示例如下: //这是伪代码,: var com;     if(!com) com = {}; //第一级域名     com.ModuleClass = {}; //第二级域名     com.ModuleCla

js定义多行字符串

js本身没有提供类似的定义方式,但是可以通过多行注释(/* */),已经借助function的方式来达到多行字符的定义,例如代码: var jstr = function() { var fun = function() { /*line1 line2 line3 line4*/ } var lines = new String(fun); return lines.substring(lines.indexOf("/*") + 3, lines.lastIndexOf("*

JS定义类的六种方式详解

转载自: http://www.jb51.net/article/84089.htm 在前端开发中,经常需要定义JS类.那么在JavaScript中,定义类的方式有几种,分别是什么呢?本文就JS定义类的六中方式说明如下(案例说明): 1.工厂方式 ? 1 2 3 4 5 6 7 8 9 10 11 function Car(){ var ocar = new Object; ocar.color = "blue"; ocar.doors = 4; ocar.showColor = fu

underscore.js定义模板遇到问题:Uncaught TypeError: Cannot read property &#39;replace&#39; of undefined

代码正确缩进位置如下, extend "layout" block 'content',-> div ->'nihao' script id:"InvoiceItem",type:"text/template",style:"display: none",-> div ->"{{price}}" div ->"{{quantity}}" div ->&

js 定义接口的三种方式

js 定义接口有三种方式 : 1.注解描述方式 优点 : 程序有可以有一个参考 缺点 : 还是属于文档的范畴,这种方式太松散,没有检查接口的方法是否完全被实现 /* * interface Composite { * function add(obj); * function remove(obj); * function update(obj); * } */ // CompositeImpl implements Composite var CompositeImpl = function

js的命名空间 &amp;&amp; 单体模式 &amp;&amp; 变量深拷贝和浅拷贝 &amp;&amp; 页面弹窗设计

说在前面:这是我近期开发或者看书遇到的一些点,觉得还是蛮重要的. 一.为你的 JavaScript 对象提供命名空间 <!DOCTYPE html> <html> <head> <title>为自己的js对象提供命名空间</title> </head> <body> <div>封装自己的数据和函数,防止和其他的库搞混了</div> <script> var jscbObject = {

JS定义函数

定义函数有三种方式:1,function fun()这种叫函数申明;2,var fun=function()这种叫函数表达式;3,var fun=new Function()也叫函数表达式.在同一个执行环境中,函数申明不管是在什么位置,都会被提升至代码的最前面,即便前面是函数表达式,这个是js的规则. 例题: function fun (){ alert(0); } fun(); var fun = function (){ alert(1); } fun(); var fun =functio