关于JavaScript命名空间的一些心得
来源:互联网 发布:c 把数据存储硬盘 编辑:程序博客网 时间:2024/06/06 04:08
http://www.jb51.net/article/50772.htm
这篇文章主要介绍了关于JavaScript命名空间的一些心得,分别给出了顶级、多级命名空间的例子,需要的朋友可以参考下
最近重构东西,碰到命名空间的设定,搜了一些知识,请教了一些高手,把自己的心得写下来
相信大家都知道,window是顶级的,这里就不写window了,先忽略
1:关于顶级
复制代码 代码如下:
var ns = ns || {};
可以看到,其实就是如果发现没有这个对象,就自动创建new Object();如果有,就直接使用这个对象,这样就不会覆盖。
2: 第二级,当然也可以在顶级的ns下创建第二级,即
复制代码 代码如下:
ns.ModuleClass = {};
可以看到,在ns下创建了一个类,当然也可以继续创建类里的方法,即是这种:
复制代码 代码如下:
ns.ModuleClass.method1= function() {////};
3:多级应该怎么做呢,比如这种com.qw.view,我想把他设成一个命名空间,这就要对每一个点分隔的名称进行分别设置命名空间,分别设成对象
我们看一个例子,把他设置在window下:
复制代码 代码如下:
function namespace(sSpace) {
var arr = sSpace.split('.'),i = 0,nameI;
var root = window;
for (; nameI = arr[i++];) {
if (!root[nameI]) {
root[nameI] = {};
}
root = root[nameI];
}
return root;
}
可以看到确实是我上面说的思路,用了一个遍历,把分隔的全部设成对象,这样每个分隔的都可以单独用。
4:列一下常用的,简单快捷的设置命名空间的小技巧吧
复制代码 代码如下:
if (!window.ns) {
window.ns = {};
}
var ns;
if(typeof ns == "undefined"){
ns = {};
}
if(typeof ns.ClassName == "undefined"){
ns.ClassName = {};
}
0 0
- 关于JavaScript命名空间的一些心得
- 关于前端命名规范的一些心得
- 关于C++命名空间的一些问题
- 关于命名空间的一些东西。
- 关于javascript的命名空间[转]
- 关于JavaScript的namespace命名空间
- 关于JavaScript的namespace命名空间
- 关于JavaScript的namespace命名空间
- 关于JavaScript的namespace命名空间
- javascript 命名空间 个人理解心得
- 关于JavaScript的一些使用心得
- JavaScript的命名空间
- 明白了一些关于命名空间(using space)的小东西
- 关于php命名空间的一些小细节
- 命名空间的一些特性
- javascript命名空间的学习
- javascript命名空间的实现
- 关于Javascript模块化和命名空间管理
- 微信服务升级——指尖上的超级表格
- Android 中Activity、Window和View之间的关系
- 三和 韓長庚 先生 墓所探訪
- 消息队列
- Eclipse JDBC连接Hive 两种方法 hiveserver hiveserver2
- 关于JavaScript命名空间的一些心得
- 摩斯密码
- 史上全详细制作远程推送证书以及用极光进行远程推送教程
- 简单工厂,工厂方法
- java bridge
- shell脚本实例
- iOS内存管理方法
- ios md5加密大小写
- TREEset的模板类