首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

@_@ 在 JS 中怎么实现 命名空间

2012-02-24 
@_@ 在 JS 中如何实现 命名空间?JS脚本越攒越多,如果管理不好就是灾难,因此提出在JS中如何实现命名空间?当

@_@ 在 JS 中如何实现 命名空间?
JS   脚本越攒越多,如果管理不好就是灾难,
因此提出   在   JS   中如何实现   命名空间?
当然也是看到有人已经这么做了。

实现原理是什么?

最好能给出一个简单实现的例子?

JS   命名空间是否具有哪些局限性或潜在问题?


[解决办法]
var outer = {};

outer.inner = {
show:function(){
alert( 'this is outer.inner.show Function ');
}
};

使用时
outer.inner.show();


这就是js的命名空间了……其实就是一个对象里包含另一个对象,使它使用起来像个命名空间……
[解决办法]
http://www.ajaxwing.com/index.php?id=2
http://www.knowsky.com/340901.html
[解决办法]
目前版本的JS不支持命名空间。目前只有运用原型来搞,差不多就是封装一下,这样就不会每个人之间开发的程序的混了。
[解决办法]
var _registerNS = function (ns) {
// see detail http://www.never-online.net
var levels = ns.split( ". ");
var _NS = neverModules;
for(var i=(levels[0]== "neverModules ")?1:0; i <levels.length; i++) {
_NS[levels[i]] = _NS[levels[i]] || {};
_NS = _NS[levels[i]];
}; return _NS;
};

_registerNS( "neverModules.ui ");
neverModules.ui.autocomplete = function(){};//_class();
neverModules.ui.autocomplete.prototype = {
//your code

}

热点排行
Bad Request.