如果您在 Firefox 浏览器控制台中输入以下内容,结果为 456
:
if (false) { 123; } else if (true) { 456; } else { 789; }
如果调整 true
/false
组合,您还可以获得 123
或 789
结果。但是,如果您尝试执行以下操作:
var a = if (false) { 123; } else if (true) { 456; } else { 789; };
您刚刚收到语法错误。语法错误并不让我感到惊讶,但我想知道如果无法使用该值,则 if
语句具有该值的意义何在。
所以我的问题是:if
语句可以用作表达式吗?如果可以,如何使用?
编辑:感谢到目前为止的答复,但为了绝对清楚,我知道我可以使用函数和/或三元运算符来实现我所描述的目的,但我特别想知道“返回值”是否可以使用if
语句的',即if
语句是否可以用作表达式。我不要求根据各种条件设置值的替代方法。
(如果 if
不能用作表达式,那么为什么 Firefox 的浏览器控制台会显示上面第一个示例的值?)
最佳答案
您可以使用三元运算符:
var a = false ? 123 : true ? 456 : 789;
关于javascript - JavaScript的 "if"语句的值可以使用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19515820/