Javascript命名空间定义自引用
javascript namespace definition self reference
我试图定义一个javascript命名空间,但在命名空间内,我有对象是基本类的扩展(使用骨干和下划线):
namespace = {
subspace: {
A: some_class.extend({...}),
B: A.extend({...})
}
}
但是这会产生一个问题,因为a还没有定义。这种情况下的最佳实践是什么?此外,我在这个命名空间中有多个子空间,后面的子空间不能引用前面的子空间。
namespace = {
subspace: {
A: some_class.extend({...}),
B: A.extend({...})
},
subspace2: {
some_function: function(){
<how do i create an instance of A for example? >
}
}
}
您应该使用辅助函数来管理它。这是一个来自"JavaScript Patterns"的实现,作者是Stoyan Stefanov。
考虑应用程序全局对象为MYAPP
。
和添加命名空间的功能:
MYAPP.namespace('MYAPP.modules.module1')
,这里是namespace
方法的示例实现:
MYAPP.namespace = function(ns_string) {
var parts = ns_string.split('.'),
parent = MYAPP,
i;
if (parts[0] === 'MYAPP') {
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;
}
相关文章:
- 自引用回调
- 可以在Javascript文件中引用定义的CSS类吗
- 对自定义组件中的本地访问引用进行反应
- 在SAPUI5中引用自定义库会导致加载库时出现404
- monkey-patchedpython类中的自引用
- jQuery.extend 抛出带有自引用的堆栈溢出异常
- 类 Parse.com 自引用
- JavaScript 内部的 AJAX 内容,使用 jQuery 自引用更多 AJAX 内容
- 如何对内容名称由引用定义的 JavaScript 页面进行爬网
- 如何使用Babel删除未使用的自引用绑定
- Javascript命名空间定义自引用
- 序列自引用有许多关系
- 从这个或自引用javascript获取var名
- 猫鼬-自引用深度填充错误
- JavaScript中的自引用正则表达式
- 为什么不能在自引用函数调用中向setTimeout传递参数呢?
- 通过引用定义对象属性名
- 使用自引用函数实现Jquery父子dom的交叉
- 了解函数自引用机制
- Javascript在初始化期间自引用函数变量的正确方法