我遇到的情况是我在字符串中检索一个函数:
var function_name = "function Test(value){return value + 1}";
现在我想执行该函数并将值存储在变量中,例如:
var value = 10;
var calc_value = function Test(value){return value + 1}
console.log(calc_value); // should show 11
但是我不知道如何从字符串中获取函数并执行它并将结果存储在变量中。
我有什么想法可以做到这一点?我知道在字符串中使用函数根本不理想,但我无法改变它。
答案 0 :(得分:3)
您可以使用eval()
。例如:
var str='function Test(value){return value + 1}';
eval(str);
alert(Test(3));

答案 1 :(得分:0)
您可以使用eval()来评估表达式
var str="function Test(value){return value + 1}";
eval(str);
console.log(Test(1));