视频链接:https://www.bilibili.com/video/BV1ux411d75J?p=63
点击观看视频
4.三元表达式
三元表达式也能做一些简单的条件选择。有三元运算符组成的式子称为三元表达式。
// 1.语法结构
//条件表达式?表达式1:表达式2
//执行思路
//如果条件表达式结果为真则返回表达式1的值,如果条件表达式结果为假则返回表达式2的值
var num = 10;
var result = num>5 ? '是的' : '错的';//我们知道表达式是有返回值的
console.log(result) //'是的'
案例:数字补0
需求:用户输入数字,如果数字小于10,则在前面补0,比如01,02,03…,如果数字大于10,则不需要补,比如20。
案例分析
1.用户输入0~59之间的一个数字
2.如果数字小于10,则在这个数字前面补0,否则返回原值
3.用一个变量接收返回值,输出
var time = prompt('请您输入一个0~59之间的一个数字')
var result = time<10 ? '0'+time :time;
alert(result);
5.分支流程控制switch语句
5.1语法结构
switch语句也是多分支语句,它用于基于不同的条件来执行不同的代码。当要针对变量设置一系列的特定值的选项时,就可以使用switch。
//语法结构 switch 转换、开关 case小例子或者选项的意思
switch(表达式){
case value1:
执行语句1;
break;
case value2:
执行语句2;
break;
case value3:
执行语句3;
break;
...
default:
执行最后的语句;
}
//执行思路: 利用我们的表达式的值和case后面的选项值相匹配 如果匹配上,
//就执行该case里面的语句 如果都没有匹配上,那么执行default里面的语句
switch(3){
case:1:
console.log('这是1');
break;
case:2:
console.log('这是2');
break;
case:3:
console.log('这是3');
break;
default:
console.log('没有匹配结果');
}
结果:这是3
5.2 switch注意事项
1.我们开发里面 表达式我们经常写成变量
2.我们num值和case里面的值相匹配的时候是全等 必须是数值的数据类型一致才可以 num ===1。
3.break 如果当前的case里面没有break 则不会退出switch是继续执行下一个case。
5.3 switch语句和if else if语句的区别
1.一般情况下,它们两个语句可以相互替换
2.switch…case语句通常处理case为比较确定值的情况,而if…else…语句更加灵活,常用于范围判断(大于、等于某个范围)
3.switch语句进行条件判断后直接执行到查询的条件语句,效率更高。而if…else语句有几种条件,就得判断多少次。
4.当分支比较少时,if…else语句的执行效率比switch语句高。
5.当分支比较多是,switch语句的执行效率比较高,而且结构更清晰。