一、概述
语句执行流程有三种:顺序执行、条件执行、循环执行。
条件语句表示的就是按照条件判断执行哪些代码(或不执行哪些代码)。
例如:我们登录一个软件,输入用户名和密码的时候,输入正确则登录成功,输入错误,会弹出相关提示,这就是一个典型的分支语句(在实际开发中,这个功能或设计多个分支语句)。
二、if语句
if语句是最基本的条件控制语句,它让JavaScript程序可以选择执行顺序,我们可以通过一个布尔值来控制一行语句是否执行,if语句有多种形式,下面我们一一介绍: 示例代码如下:
代码语言:javascript复制if(true)
console.log("执行代码");
在上面的代码中,if括号内的值如果是true,则执行第二行代码,如果是false,则不执行第二行代码。
if后面的括号内一般不会直接写一个布尔值,而是写一个表达式, 示例代码如下:
代码语言:javascript复制1 var num1 = 10;
2 var num2 = 20;
3 if(num1<num2) //如果改成num1>num2,则不会输出下面的文字
4 console.log("num1小于num2")
上面我们将的两个例子都是通过判断条件来执行一行代码,但是大多数情况,我们需要执行多行代码,那么我们需要在if后面加上一对花括号,并且,为了让代码块更直观,我们在以后的代码中,都会写if后面的花括号。 示例代码如下:
代码语言:javascript复制1 var num1 = 10;
2 var num2 = 20;
3 if(num1<num2){
4 console.log("判断num1是否小于num2");
5 console.log("num1小于num2");
6 }
通过上面的例子,我们通过判断条件确定是否执行某一个代码块,下面我们通过if…else…语句实现:在两个代码块中,选择一个来执行 示例代码如下:
代码语言:javascript复制1 var num1 = 10;
2 var num2 = 20;
3 if(num1<num2){
4 //num1如果小于num2,表达式为true,输出if语句后的代码;num1如果大于num2,表达式为false,输出else语句后的内容
5 console.log("num1小于num2");
6 }else{
7 console.log("num1大于num2");
8 }
if…else语句可以判断两种情况下,需要执行哪些代码,如果需要判断的条件是三种情况,我们可以使用if…else if…语句 示例代码如下:
代码语言:javascript复制1 var num1 = 10;
2 var num2 = 20;
3 if(num1<num2){
4 console.log("num1小于num2");
5 }else if(num1>num2){
6 console.log("num1大于num2");
7 }else if(num1===num2){
8 console.log("num1等于num2");
9 }
我们可以通过修改num1和num2的值来判断输出哪一行语句。
通过控制运算符来实现数学运算
代码语言:javascript复制 1 var num1 = 10;
2 var num2 = 20;
3 var sign = " "; //通过修改操作符,输出不同的结果
4 var result = 0; //result用来存储计算的结果,现在设置一个初始值0
5 if(sign === " "){
6 result = num1 num2;
7 console.log(result)
8 }else if(sign === "-"){
9 result = num1 - num2;
10 console.log(result)
11 }else if(sign === "*"){
12 result = num1 * num2;
13 console.log(result)
14 }else if(sign === "/"){
15 result = num1 / num2;
16 console.log(result)
17 }else{
18 console.log("请输入正确的运算符")
19 }
三、switch语句
if语句在程序执行的过程中创建一条分支,并且可以使用if…else if…语句来处理多条分支,然而当所有的分支都依赖于同一个表达式的值时,重复计算多条if语句中的条件是非常浪费时间的做法,switch语句正合适处理这种情况
代码语言:javascript复制 1 var num = 0; //通过修改num的值控制执行哪行语句
2 switch(num){
3 case 0:
4 console.log("num的值是零"); //当n===0,执行
5 break;
6 case 1:
7 console.log("num的值是一"); //当n===1,执行
8 break;
9 case 2:
10 console.log("num的值是二"); //当n===2,执行
11 break;
12 case 3:
13 console.log("num的值是三"); //当n===3,执行
14 break;
15 default:
16 console.log("其他"); //当n的值不是0,1,2,3,执行
17 break;
18 }
我们了解switch语句的语法,下面我们使用switch语句改写demo03,实现通过控制运算符来实现数学运算
代码语言:javascript复制 1 var num1 = 10
2 var num2 = 20
3 var operator = " "
4
5 switch(operator){
6 case " ":
7 console.log("num1 num2=" (num1 num2) )
8 break;
9 case " - ":
10 console.log("num1-num2=" (num1 - num2) )
11 break;
12 case " * ":
13 console.log("num1*num2=" (num1 * num2) )
14 break;
15 case " / ":
16 console.log("num1/num2=" (num1 / num2) )
17 break;
18 default:
19 console.log("其他")
20 break;
四、条件运算符
如果是简单的判断,我们可以使用条件运算符
代码语言:javascript复制表达式?第一个值:第二个值
如果表达式为true,表达式的返回值是第一个值,如果表达式为false,那么表达式的返回值是第二个值,示例代码如下所示示例示例代码如下:
代码语言:javascript复制1 var num1 = 10;
2 var num2 = 20;
3 var result = num1 > num2 ? 100 : 200;
4 //如果num1大于num2,条件表达式的值为100,若num1小于等于num2时,条件表达式的值为200;
5 console.log(result);
五、课后练习
1.通过运算符列出10 20的加减乘除算法;