我正在尝试在新的上下文中评估一个函数,即包含范围中不存在的某个已定义单词的函数。如果我将函数定义为字符串,那就很容易了,但我想提供使用常规函数列表来执行此操作的能力,如下所示:
var funcs = {
first: function() { return 'yayaya'; },
second: function() { return 'okokok' + keyword; },
...
};
然后:
function Thing () {};
for (func in funcs) {
var definition = funcs[func].definition();
var keyword = "NOW I AM THE KEYWORD";
var actual_func_with_keyword_defined = eval(definition);
Thing.prototype[func] = actual_func_with_keyword_defined;
}
我缺少的是定义()函数或等效函数,它返回函数的源。这在 JavaScript 中可能吗?
最佳答案
尝试简单地取出.definition()
。
关于javascript - javascript中有没有一种方法可以获取给定函数的定义作为字符串,以便可以修改和评估?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1430761/