目录
1、IF语句分支 (当判断语句的条件为真时执行代码块里面的)
1、分支结构
1、IF语句分支 (当判断语句的条件为真时执行代码块里面的)
1、if语句
// 条件为 true 的时候执行 {} 里面的代码
if (true) {
alert('因为条件是 true,我会执行')
}
// 条件为 false 的时候不执行 {} 里面的代码
if (false) {
alert('因为条件是 false,我不会执行')
}
//并不会执行alert里面的指令
2、if else语句
//进行判断、如果满足if的判断条件就执行if下的语句快,然后跳出判断
//如果不满足if下的判断条件,就跳过if下的语句快,直接执行else下的语句块,并跳出判断
var age = 25
if(age >= 18){
console.log('成年人')
}else{
console.log('未成年人')
}
3、if else if ... 语句
//多个判断条件,依次向下执行,当出现一个判断条件成立时,执行该判断条件下的语句快,并跳出判断,不会执行后面的判断
//当没有一个条件能够满足的,将不会有语句快执行
if(判断条件一){
语句快1
}else if(判断条件二){
语句块2
}
var num = 10
if(num > 10){
console.log('数字大于10')
}else if(num < 10){
console.log('数字小于10')
}
//语句块都不执行
4、if else if … else 语句
//当问题实现时一部分能进行判断,一部分不能判断或者执行语句一样时,将后面一类归一
var grade = 89
if(grade > 100){
console.log('成绩不能大于100')
}else if(grade >= 90 && grade <=100){
console.log('等级为A');
}else if(grade >= 80 && grade < 90){
console.log('等级为B');
}else if(grade >= 70 && grade < 80){
console.log('等级为C');
}else if(grade >= 60 && grade < 70){
console.log('等级为D');
}else{
console.log('不合格')
}
2、switch语句
//对某一值进行判断
//switch 语句只能对值进行判断,不能实现比较语句
//对成绩等级判断、使用switch更加简洁
var score = 95
var grade
switch (parseInt(score / 10)) {
case 10:
case 9:
grade = 'A'
break
case 8:
grade = 'B'
break
case 7:
grade = 'C'
break
case 6:
grade = 'D'
break
default:
grade = '不及格'
}
console.log(grade)
switch语句的穿透特性
//当满足某个条件时、如果该case语句下没有加break跳出循环,将会执行后面的case语句快,直到有一个case语句块下有break
某年某月的天数计算使用穿透性质会使代码简洁
var year = 2055
var month = 2
var day
switch (month) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12: {
day = 31
break
}
case 4:
case 6:
case 9:
case 11: {
day = 30
break
}
case 2:
if((year % 400 == 0) || ((year % 4 == 0) && (yera % 100 != 0))){
day = 29
}else{
day = 28
}
}
console.log(year + "年" + month + "月有" + day + "天" )
2、三元运算
//三元运算符等于if else条件判断
//为真执行 : 前面的语句块
//为假执行 : 后面的语句块
var age = 18;
age >= 18 ? alert('已经成年') : alert('没有成年')
//扩展 多重三元运算符嵌套
//输出三个数的最大值
var m = 34
var n = 56
var k = 27
//方案一
max = (max = (m > n ? m : n) )> k ? max : k
//方案二
var max = a > b ? ( a > c ? a : c ) : ( b > c ? b : c )
console.log(max)