我有这个模仿树的结构:
var MODULESYSTEM =
{
modules:
{
a : function() { return 'modules.a'; }
b : function() { return 'modules.b'; }
c :
{
d : function() { return 'modules.c.d'; }
}
}
}
因此MODULESYSTEM.modules.a();
有效,所以MODULESYSTEM.modules.c.d();
也是如此。但是,如果我想要MODULESYSTEM.modules.c();
之类的东西呢?它应该返回'modules.c'
答案 0 :(得分:3)
您将无法在一行中声明这种数据结构。您需要在程序上构建它:
var MODULESYSTEM = {
modules: {
// Other top-level namespace objects
c: function() {
return 'modules.c';
}
}
};
// Later:
MODULESYSTEM.modules.c.d = function() { return 'modules.c.d'; };
如果您可以提供有关您希望解决的问题的更多背景信息,则可能有更好的解决方案。