如何构造一个将传递if(变量)的字符串

时间:2011-09-09 05:34:47

标签: javascript

我是一个jquery新手。我把我的代码简化为最简单的方式来描述我的问题。但我在措辞方面遇到了麻烦。

if(var1 && var2){
  // this works
}

searchMe = var1+" && "+var2;
if(searchMe){
  // this doesn't work
}

searchMe = "var1"+" && "+"var2";
if(searchMe){
  // still doesn't work
}

我希望能够根据用户输入构建“searchMe”变量。有人能告诉我更好的方法吗?谢谢!

2 个答案:

答案 0 :(得分:1)

不确定,但您可以使用eval功能

if(eval(searchMe)){
  // this doesn't work
}

答案 1 :(得分:1)

在没有可怕的eval(实际上,你应该从不使用)的情况下执行此操作的一种可能方法是直接评估,然后最终得到一个变量结束是布尔值。

var a = true;
var b = a && (false || true) && (1 < 2);

if (b)
    document.write('yes');
else
    document.write('no');

var c = b && false;
document.write(', ');

if (c)
    document.write('yes');
else
    document.write('no');

将其与您的示例联系起来

searchMe = var1 && var2;
if(searchMe){
  // this does work
}