javascript - JavaScript的 "if"语句的值可以使用吗?

标签 javascript if-statement expression

如果您在 Firefox 浏览器控制台中输入以下内容,结果为 456:

if (false) { 123; } else if (true) { 456; } else { 789; }

如果调整 true/false 组合,您还可以获得 123789 结果。但是,如果您尝试执行以下操作:

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/

相关文章:

javascript - extjs 6 复选框组getValue

javascript - 如何将每个用户路由/链接到他们自己的数据?

java - 尝试弄清楚递归基础知识

sql-server - "NOT"什么时候不是否定?

spring - 如何在 Spring 表达式语言中进行类型转换

javascript - JQuery 上传、预览、裁剪

javascript - 如何使用 Raphael .animateWith()

实时时间到达时的 JavaScript 23 :00

android - 如何修复用户输入的输入验证错误?

R/ggplot2 : use literal strings on parse()