if语句
if语句括号里面的表达式,会自动调用Boolean()转型函数将这个表达式转换成一个布尔值
if ( 条件 ) { 语句块 }
if ( 条件 ) { 语句块 } else { 语句块 }
if ( 条件 ) { 语句块 } else if (条件) { 语句块 } ... else { 语句块 }
当 条件表达式成立时(值为true),执行 语句块。
如下代码块显示:
let num = prompt('请输入您喜欢的科目')
if (num == 'html') {
alert(`您喜欢的科目是${num}!`) //当num等于html时,执行此代码块
} else if (num == 'css') {
alert(`您喜欢的科目是${num}!`) //当num等于css时,执行此代码块
} else if (num == 'javascript') {
alert(`您喜欢的科目是${num}!`) //当num等于javascript时,执行此代码块
} else {
alert('查无此科目,请重新输入!') //当num等于除了上面三个的任何值时,执行此代码块
}
如果输入的是html或者css或者Javascript或其他值,就会执行对应的代码块中的内容,因为这是分支语句,因此只会执行一个条件里面的代码,符合哪个就执行哪个代码块
switch语句
和多分支if...else if...else语句 作用是一样的
如下代码块显示:
let num = prompt('请输入内容')
switch (num) {
case '1':
alert('您输入的是' + num); //输入的是1时,执行此代码
break;
case '2':
alert('您输入的是' + num); //输入的是2时,执行此代码
break;
case '3':
alert('您输入的是' + num); //输入的是3时,执行此代码
break;
default:
alert('无相关信息') //当上面的条件都不满足时,执行此代码
break;
}
case value 可选
用于匹配 num 的 case 子句。如果 num 与给定的 value 相匹配,则执行该 case 子句中的语句直到该 switch 语句结束或遇到一个 break 。
default 可选
一个 default 子句;如果给定,这条子句会在 num 的值与任一 case 语句均不匹配时执行。
default在switch语句中的最末尾可以不加break,但是在中间或头部要加break
if和switch的区别
if通常用于范围判断,比较灵活
switch通常用于等值判断
switch里面的case是全等于,必须是值和类型都相等,才执行对应的代码块