小编Dr *_*ter的帖子

Javascript defineGetter

var a = {}; 

a.__defineGetter__('test',function() {return 5;}); 

var i ="test";  
Run Code Online (Sandbox Code Playgroud)

除此之外还有其他方法可以执行getter a[i](同时使用var i它)

编辑:

我在问var i这个问题.我会更好地解释真正的问题.

我在命名空间对象上使用getter仅在需要时加载模块.

MyNameSpace.__defineGetter__('db',function(){MyNameSpace.loadModule('db');});
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我试图加载所有模块:

for (var i in MyNameSpace){
    MyNameSpace[i];
}
Run Code Online (Sandbox Code Playgroud)

我在我的代码上使用了Google闭包编译器,它将上面的循环减少到:

for(var i in MyNameSpace);
Run Code Online (Sandbox Code Playgroud)

没有模块加载.我试图"欺骗"gcc让我加载模块.

javascript getter

5
推荐指数
1
解决办法
5142
查看次数

标签 统计

getter ×1

javascript ×1