JavaScript-条件语句

2018-05-15  本文已影响0人  能吃饭也能吃苦1236

标识符

if结构

/*if结构先判断一个表达式的布尔值,然后根据布尔值的真伪,执行不同的语句。布尔值指的是 JavaScript 的两个特殊值,true表示真,false表示伪。“布尔值”一般由一个条件表达式产生的,必须放在圆括号中,表示对表达式求值。如果表达式的求值结果为true,就执行紧跟在后面的语句;如果结果为false,则跳过紧跟在后面的语句。

*/
if (布尔值)
语句;

//或者
if (布尔值) 语句;
if (条件表达式) {
  满足条件时,执行语句1;
} else {
  不满足条件时,执行的语句;
}
if (a === 0) {

} else if (a === 1) {

} else if (a === 2) {

} else {

}
var m = 1;
var n = 2;
if (m !== 1) 
if (n === 2) console.log('hello');
else console.('world');
//上面代码不会有输出,else代码块不会得到执行

//上面代码相当于
var m = 1;
var n = 2;
if (m !== 1) {
  if (n === 2) {
    console.log('hello');
  } else {
       console.log('world');
     }
}

//如果要输出else语句,改变大括号位置即可
var m = 1;
var n = 2;
if (m !== 1) {
  if (n === 2) {
    console.log('hello');
  }
} else {
     console.log('world');
    }

switch结构

switch (x) {
  case 1:
    执行语句1;
    break;
  case 2:
    执行语句2;
    break;
  default:
    执行语句3;
}
/*x为变量,可以是任意的;
根据变量的值,可以执行对应的case,没有对应的执行default部分;
每个case代码块内部必须要有break语句,不然会接着执行下一个case代码块,不会跳出switch结构*/
switch (1 + 3) {
  case 2 +2 :
    执行语句1;
    break;
  default:
    执行语句2;
}
//default部分不会被执行

//switch语句后面的表达式与case语句后面的表达式比较运行结果时采用严格相等运算符(===),而不是相等运算符(==),所以比较时不会发生类型转换
var x = 1;
switch (x) {
  case true:
    console.log('x 发生类型转换');
  default:
    console.log('x 没有发生类型转换换');
}
//结果是 x 没有发生类型转换
(条件) ? 表达式1 : 表达式2 /*表示条件为true时返回表达式1的值,否则返回表达式2的值*/

//相当于
if (条件) {
    表达式1;
} else {
     表达式2;
}
上一篇 下一篇

猜你喜欢

热点阅读