从字符串输入执行JS代码

时间:2014-09-08 18:13:00

标签: javascript function parsing

有没有办法做到以下几点?

var value = foo;
execute("value = 'bar'");
console.log(value) // returns 'bar'

function execute(jsCodeString) {
    // execute js code
}

2 个答案:

答案 0 :(得分:1)

使用eval()

eval("value = 'bar'");

无论如何,我建议你阅读使用eval()的优点和缺点 When is JavaScript's eval() not evil?

答案 1 :(得分:1)

您可能希望使用“eval”。

function execute(jsCodeString) {
    eval(jsCodeString)
}

请参阅:Execute JavaScript code stored as a string