04-JS条件分支语句

04-JS条件分支语句

一、条件分支语句

条件分支语句,也叫做条件判断语句,就是根据某种条件执行某些语句,不执行某些语句。

JS中条件分支的语句有三种

(一)if 条件分支语句

条件分支的主力语法,这个主力语法能够书写所有的条件分支语句。

1.if 判断语句

如果...

var score = 21;
if(score >= 60){
    console.log("你及格了");
}

2.if ... else ...分支语句

如果...否则...让程序出现分支,也就是现在有两条路可以走。

var score = 33;
if(score >= 60){
    console.log("你及格了");
}else{
    console.log("你挂科了");
}

3.if ... else if ... else if ... else

多分支 if 语句

如果。。。否则如果。。。否则如果。。。否则。。。

用户会选择一个分支执行,选择这个分支了,就暗含了上一个分支没有满足:

var score = 75;
    if(score >= 80){
      console.log("你很优秀");//不满足条件,所以不执行,走楼梯下楼
    }else if(score >= 70){
      console.log("良好,很不错");//走到这个楼层,一定暗含小于80,这一楼层满足,跳楼了
    }else if(score >= 60){
      console.log("你及格了,继续加油");//不执行
    }else{
      console.log("你不及格,等着挨揍");//不执行
    }

楼层中else只能有一个,else if可以有多个

语法:

if (条件1){

条件1成立时,执行的程序

}else if (条件2){

条件1不成立,并且条件2成立时,执行的程序

}

......

else{

以上所有条件都不成立时,执行的程序

}

4.if 语句可以嵌套

如果里面套一层如果

//if嵌套语句
      var chinese = 81;
      var math = 70;
      if(chinese >=80){
        if(math >= 60){
          alert("你没有挂科");
        }
      }

(二)switch ... case 条件分支语句

switch case语句,switch case 能实现的,if else语句也一样能实现

switch(检测值){

case 值1:

值1与检测值相同时做的事情

break;

case 值2:

值2与检测值相同时做的事情

break;

case 值3:

值3与检测值相同时做的事情

break;

defalult:

默认要做的break;

}

那switch语句用于判断的是相等还是全等呢?

switch进行相同判断,底层是===的比较,连类型一起比较。

(三)三元运算符

?: 是一组运算符,这是JS中唯一一个需要三个元素参加的运算符。

条件?val1 : val2

表达式的值,要看条件是true还是false。如果条件是true,那么表达式的值就是val1.如果条件是false,表达式的值就是val2。

简单的看一个例子

console.log(true ? 8 : 6); //8
console.log(false ? 8 : 6); //6

三目运算符是if,else语句的一种简化形式

if (条件){

条件成立,执行程序1

}else{

条件不成立,执行程序2

}

上面的if,else语句可以简写成以下的三目运算

条件?执行程序1:执行程序2

总结:

条件分支的语句一共有三种:

if... else if ...

switch case (某一方面很擅长,体现在代码的清晰度上)

三元运算符(赋值的时候,根据条件有两个可能的值,马上想到三元运算符)

&& || 短路写法

但是 && || 短路写法也有一种选择的感觉,这样选就算4种。

二、条件循环语句

JS中流程控制的语句,就两个:条件分支、循环语句。靠这两种语句,就能完成所有的程序。

循环语句是一系列反复执行直到符合特定条件的命名。

循环语句能够解决大量类似语句书写。

(一)for循环语句

作用:

for循环的作用是重复执行一段程序,能够解决大量的类似语句书写。

for(var i = 1; i <= 99; i++){
    console.log("喜欢你很多很多次");
}

书写需要注意:

最容易犯的语法错误:括号中最后一个语句没有分号

1.for循环的本质,必须搞清楚

for(1,2,4){

3

}

5

for(var i = 1; i <= 99; i++){
    console.log("第"+ i + "次喜欢你");
}
console.log("我是循环结束后的语句");

2.for 循环里的break和continue语句

break语句

结束整个循环

作用:break下面的程序不执行,步长累加不执行,整个for循环结束。

for(var i = 1; i <= 100; i++){
    console.log(i);
    if(i == 5){
        break;//找到一个,就立即终止循环
    }
}
//结果为 1,2,3,4,5

continue语句

结束本轮循环

作用:continue下面的程序不执行,执行步长累加,开始下一轮循环

for(var i = 1;i <= 10; i++){
    if(i == 5){
        continue;
        //当i为5时,立即终止执行后面的console语句,直接i为6了
    }
    consolelog(i);
}
//结果为 1,2,3,4,6,7,8,9,10

break和continue的目的,就是优化算法。

(二)while语句

while循环,是for循环的一种简化形式

语法:

设置循环变量

while(循环执行的条件){

语句块

}

var n = 1;
while(n <= 10){
    console.log(n);
    n++;
}

如果判断条件为假,那么代码块中的语句将一次都不会执行

其实很像for循环的变体

var n = 1;
for(;n <= 10;){
    console.log(n);
    n++;
}

(三)do ... while语句

和while语句相似,都是for的变体,do就是做,while就是当

语法:

do{

1语句

}while(2条件表达式)

程序一开始就会执行一次1,然后验证2是否为真,如果是真,继续执行1。。。。直到假跳出循环

不过do...while是一个后置验证,先执行后验证,怎么着都会执行一次:

例子:

do{
    console.log("你是谁?");
}while(false)

这里至少会打印一次

总结一下,JS中的三个循环语句:

for( ; ; ){ //注意括号内是三条语句,要用两个分号隔开

}

while(){

}

do{

}while()

上一篇:运营商如何推动SaaS在中小企业落地?


下一篇:电器TM241 数据寄存器设置数据 获取数据例子