我有一个带有指令的变量,例如:
runThis= "alert(); if(1>2) { alert("NO WAY");}";
如何在runThis中运行代码?
答案 0 :(得分:3)
eval(runThis);
但是你不应该用这种方式编写代码,这很难管理。
请改为:
runThis= function () {
alert();
if(1>2) {
alert("NO WAY");
};
}
然后只需调用runThis
答案 1 :(得分:2)
这样做的肮脏方式是
eval(runThis);
然而,这并没有被推荐。
或者,将其包装在函数
中runThis = function(){
// statements go here
}
然后你可以称之为runThis();
答案 2 :(得分:1)
如果你真的想做这种事情,你可以使用eval()函数:
eval(runThis);
然而,这不是推荐的方法,因为它可能导致各种难以诊断的错误和错误
更好的方法是使用您希望执行的代码编写适当的函数,然后将其分配给变量并通过变量调用它:
//Assign function to variable
runThis = function(){
alert();
if(1>2) {
alert("NO WAY");
};
}
//Later, invoke the function
runThis();
答案 3 :(得分:0)
code = "alert('test');";
eval(code);
答案 4 :(得分:0)
警告:这是一个可怕的做法!不要这样做!
eval(runThis);
一旦你正确地逃过内部报价。
答案 5 :(得分:0)
eval(runThis);
但不建议这样做。请记住eval() is evil
。
答案 6 :(得分:0)
Eval将执行一个字符串但你最好定义运行它如下。并称之为任何功能。
var runthis = function(){
//code here
}
但是如果你需要执行字符串调用eval。
的eval(runthis);