if语句:
首先if语句是判断语句,他的语法格式是这样的:
if(判断条件){判断条件为真的时候,执行该语句}
注意点:if判断条件存在隐式转换,转换为Boolean类型,真或者假;
第二个注意点,除了空字符串‘’(注意是空的字符串),null,NaN,undefined,false,0,这些为假其余都为真。
if (1 > 3) //这里是判断条件
{document.write('对的')} //当满足条件以后在页面输出对的
if语句中的else:
else的语法
if(判断条件){判断条件为真的时候,执行该语句}
else{如果条件为假的时候,执行该语句}
if (1 >3) { //这里输入判断条件
document.write('对的') //当判断条件为真的时候执行该语句
} else {
document.write('不对') //但是条件为假的时候执行该语句
}
if语句中的多分支语句:
let score = +prompt('请输入你的成绩')
if (score >= 90) {
document.write(`很棒`)
} else if (score >= 80 && score <= 90) { //这里如果按照顺序执行的话,可以不用写&&符号,但是不按照顺序写的时候,一定要写&&符号
document.write(`还行`)
} else if (score >= 60 && score <= 60) {
document.write(`一般`)
} else {
document.write(`很差`)
}
注意点:else后边只有一行代码的情况下,可以省略大括号,直接写入表达式
let score = +prompt('请输入你的成绩')
if (score >= 90) document.write(`很棒`)
else if (score >= 80 && score <= 90) document.write(`还行`)
else if (score >= 60 && score <= 60) document.write(`一般`)
else document.write(`很差`)
switch语句:
switch语句的语法结构
switch(数据) { // 这里的数据会和每个值进行比较,匹配上了,就执行,如果匹配不上,就不执行,进行下一个匹配
case 值1 : 代码1 break
case 值2 : 代码2 break
case 值3 : 代码3 break
default : 代码n break // 如果这里没有全等的数据,就会输出dedault
}
注意点:switch匹配要求,全等匹配===,如果判断区域的数值,在(true),会让数据case跟变量匹配 case === 变量:代码1 break
注意点2:如果switch语句中出现判断区域性的数值,在()写true,让数据跟case中的数据匹配
注意点3:break的作用是退出switch 匹配上以后就退出,不然会一直往后边打印,switch语句就会变得没有意义
注意点4:switch一定要全等,数据和变量一定要全等
注意点5:switch语句相同的返回值,可以多个case声明,给多个case声明一个值
switch (1) {
case 1:
document.write('苹果n元1斤')
break;
case '2':
document.write('橘子n元1斤')
break;
case '3':
document.write('香蕉n元1斤')
break;
case '4':
document.write('梨n元1斤')
break;
default:
document.write('没有此水果,未来添加该类目')
break;
}
let a = prompt('请输入年份')
let b = +prompt('请输入月份')
let c = 0;
switch (b) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
c = 31
break;
case 4:
case 6:
case 9:
case 11:
c = 30
break;
case 2:
if (a % 4 === 0 || (a % 4 === 0 && a % 100 !== 0)) {
c = 29
} else {
c = 28
}
}
document.write(`您输入的年份是${a}<br>您输入的月份是${b}<br>那个月是${c}天`)
if语句和switch语句的区别:
if语句:处理单一或者两个条件的判断
if-else语句:处理简单的条件分支情况
多重if选择:处理复杂条件的分支情况
嵌套if选择:用于较复杂的流程控制
Switch语句选择情况:
多分支,条件是等值的判断情况,表达式反馈类型不是Boolean类型,常用字符串进行对比,判断是否相等进行取值,一定要是全等
能够使用switch实现的,if也可以实现,反之就不一定可以了,如果是区间范围使用if语句,如果是等值就使用switch语句
三元运算符:
三元运算符语法:条件表达式?如果为真返回冒号前边的值:如果为假返回冒号后边的值;
经典案例,使用三元运算符,给小于10的数字前边补0
let num = +prompt('请你输入一个1-10之间数字')
// 如果小于10则进行补零操作
/* if (num < 10) {
num = '0' + num
}
document.write(num) */
// 使用三元运算符进行运算
num = num < 10 ? `0` + num : num //这里num是把新的值赋给num的
document.write(num)