if 结构先判断一个表达式的布尔值,然后根据布尔值的真伪,执行不同的语句。所谓布尔值,指的是 JavaScript 的两个特殊值,true表 示真,false表示伪。
if 语句语法规范
|-------|------------------|
| 1 2 3 | if (布尔值){ 语句 ; } |
需要注意的是,"布尔值"往往由一个条件表达式产生的,必须放在 圆括号中
|-----------|-------------------------------------------------------|
| 1 2 3 4 5 | var m = 3; if (m === 3) { m++; } console.log(m); // 4 |
注意, if后面的表达式之中,不要混淆赋值表达式( =)、严格相等 运算符( ===)和相等运算符( ==)。尤其是赋值表达式不具有比 较作用。
|-----------|------------------------------------------------------|
| 1 2 3 4 5 | var x = 1; var y = 2; if (x = y) { console.log(x); } |

条件语句之 if ... else
if ... else 基本结构
if代码块后面,还可以跟一个else代码块,表示不满足条件时,所要 执行的代码。
|-----------|----------------------------------------------------------|
| 1 2 3 4 5 | if (m === 3) { // 满足条件时,执行的语句 } else { // 不满足条件时,执行的语句 } |

多个 if ... else 连接
对同一个变量进行多次判断时,多个if...else语句可以连写在一起。
|-------------------|---------------------------------------------------------------------------------------------------|
| 1 2 3 4 5 6 7 8 9 | if (m === 0) { // ... } else if (m === 1) { // ... } else if (m === 2) { // ... } else { // ... } |

if ... else嵌套
javascript
var eat = true;
var food = "猪肉炖粉条";
if (eat) {
if (food == "双椒鱼头") {
console.log('双椒鱼头 ');
}else{
console.log("猪肉炖粉条"); }
} else {
console.log('不吃了 ');
}
else代码块总是与离自己最近的那个if语句配对。
条件语句之 switch
多个if...else连在一起使用的时候,可以转为使用更方便的switch结 构

|----------------------|---------------------------------------------------------------------------------------------|
| 1 2 3 4 5 6 7 8 9 10 | switch (fruit) { case "banana": // ... break; case "apple": // ... break; default: // ... } |
需要注意的是,每个case代码块内部的break语句不能少,否则会 接下去执行下一个case代码块,而不是跳出switch结构。
|-------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------|
| 1 2 3 4 5 6 7 8 9 10 11 12 13 | var x = 1; switch (x) { case 1: console.log('x 等于1'); case 2: console.log('x 等于2'); default: console.log('x 等于其他值 '); } // x等于1 // x等于2 // x等于其他值 |
三元运算符
JavaScript还有一个三元运算符(即该运算符需要三个运算子) ?: , 也可以用于逻辑判断。
|---|--------------------|
| 1 | (条件) ? 表达式1 : 表达式2 |
这个三元运算符可以被视为if...else...的简写形式,因此可以用于多 种场合。

判断一个整数是奇数与偶数
if ... else 语句
|-------------|----------------------------------------------------------------------------------|
| 1 2 3 4 5 6 | var n = 100; if (n % 2 === 0) { console.log("偶数"); } else { console.log("奇数"); } |
三元运算符
|-------------------------------------------|
| 1 var n = 100;n % 2 === 0 ? '偶数 ' : '奇数 ' |