0
var statement = "true && 'yes' || 'no'"
eval(statement)

给我“是”。

但我需要一种不使用 eval 的方法来做到这一点。反正有这样做吗?

4

1 回答 1

1

正如@James Allardice在评论中所说,如果你需要使用eval,就使用它。

如果由于某种原因你不喜欢eval作为典型的 JavaScript 函数,还有另一种解决方法,它的作用基本相同:

var statement = "true && 'yes' || 'no'";
new Function("return " + statement)();
于 2013-03-20T08:07:34.643 回答