JS if…else条件语句 – JavaScript教程

上一章JavaScript教程请查看:JS数字类型及其操作
在本教程中,你将学习如何使用if…else…else if编写决策代码,也就是JavaScript中的条件语句。
JavaScript条件语句与许多其他编程语言一样,JavaScript也允许编写基于运行时逻辑测试或比较测试条件的结果执行不同操作的代码。这意味着,你可以以表达式的形式创建测试条件,计算结果为true或false,并根据这些结果执行某些操作。
JavaScript中有几个条件语句可以用来做决定:

  • if语句
  • if……else语句
  • if……else if … .else语句
  • switch……case语句
我们将在接下来的小节中详细讨论这些语句。
if语句只有在指定条件的计算结果为true时,才使用if语句执行代码块,这是最简单的JavaScript条件语句,可以这样写:
if(condition) { // 执行 }

【JS if…else条件语句 – JavaScript教程】如果当前日期是星期五,下面的示例将输出“Have a nice weekend!
var now = new Date(); var dayOfWeek = now.getDay(); // Sunday - Saturday : 0 - 6if(dayOfWeek == 5) { alert("Have a nice weekend!"); }

if……else语句你可以通过向if语句添加else语句来提供另一种选择,从而增强JavaScript程序的决策能力。
if……else语句允许你执行一个代码块(如果指定条件的计算结果为true)和另一个代码块(如果计算结果为false)。它可以这样写:
if(condition) { // 如果条件为真,则执行的代码 } else { // 如果条件为真,则执行的代码 }

以下示例中的JavaScript代码将输出“Have a nice weekend!”(如果当前日期是星期五),否则它将输出文本“Have a nice day!”
var now = new Date(); var dayOfWeek = now.getDay(); // Sunday - Saturday : 0 - 6if(dayOfWeek == 5) { alert("Have a nice weekend!"); } else { alert("Have a nice day!"); }

if… else if… else语句if… else if… else是一个特殊的语句,用来组合多个if…else语句。
if(condition1) { // 如果条件1为真,则执行代码 } else if(condition2) { // 如果条件1为假,条件2为真,则执行代码true } else { // 如果条件1和条件2都为假,则执行代码 }

下面的示例将输出“Have a nice day!”(如果当前日期是星期五)和“Have a nice Sunday!”(如果当前日期是星期天),否则输出“Have a nice day!
var now = new Date(); var dayOfWeek = now.getDay(); // Sunday - Saturday : 0 - 6if(dayOfWeek == 5) { alert("Have a nice weekend!"); } else if(dayOfWeek == 0) { alert("Have a nice Sunday!"); } else { alert("Have a nice day!");

三元操作符三元运算符提供了一种简写if…else语句。三元运算符由问号(?)符号表示,它有三个操作数:一个要检查的条件,一个结果为true,一个结果为false。它的基本语法是:
var result = (condition) ? value1 : value2

如果条件被赋值为true,则返回value1,否则返回value2。要理解这个操作符是如何工作的,请考虑以下示例
var userType; var age = 21; if(age < 18) { userType = 'Child'; } else { userType = 'Adult'; } alert(userType); // 显示 Adult

使用三元运算符可以以更紧凑的方式编写相同的代码
var age = 21; var userType = age < 18 ? 'Child' : 'Adult'; alert(userType); // 显示 Adult

在上面的例子中可以看到,由于指定的条件赋值为false,因此返回冒号(:)右侧的值,即字符串“Adult”。
提示:使用三元操作符编写的代码有时很难阅读。但是,它提供了一种编写紧凑if-else语句的好方法。

    推荐阅读