【发布时间】:2009-09-28 15:25:13
【问题描述】:
我正在尝试将一个私有变量放入一个已经存在的函数中,例如:
var AObject={
get:function(s){
return s.toLowerCase()+a;
}
}
function temp(){
var a="A";
var o={};
eval("o.get="+AObject.get.toString());
reurn o;
}
var bObject=temp();
BObject.get("B"); // "bA"
BObject.get(); /* error: s is undefined; but marked in line "return o;"
and not in "return s.toLowerCase()+a;"*/
我的目标是运行 get() 函数,由现有的 AObject 拥有,使用私有 var ...我使用 eval(或 new 函数)获得它,但不幸的是调试器将被破坏!
那么,有没有一种方法可以在不使用 eval 的情况下实现这一点,或者有一种方法可以使用 eval 并保持调试器有用?
【问题讨论】:
标签: javascript debugging eval private-members