一、if语句的分支

分类:单分支,双分支,多分支,分支嵌套

()中可以是一个值,也可以是一个表达式

// 单分支if (条件表达式){   代码段}// 双分支if (条件表达式) {    代码段1 }else {   代码段2}// 多分支if (条件表达式1){    代码段1} else if (条件表达式2){   代码段2} else if (条件表达式3){   代码段3}else{    代码段4}

案例:

      //1.考驾照的年龄需要在18岁到70岁,不满足条件提示不符合        var year = parseInt(prompt('请输入您的年龄'))        if((year70) && year>0){            console.log('您的年龄不符合考驾照');        }
//2.公园票价,浏览器接收:老人,成人,小孩,老人提示免票,成人中性别“男”为100,“女”为80,小孩为同性别成人的半票        var gender = prompt('请输入您的性别');        var year = parseInt(prompt('请输入您的年龄'));        if(gender==='男') {            if ((year >= 0 && year = 60) {                console.log('老人儿童免票');            } else if (year > 6 && year = 0 && year = 60) {                console.log('老人儿童免票');            } else if (year > 6 && year <= 12) {                console.log('小孩50元票价');            } else {                console.log('成年人 票价80元');            }        }else{            console.log('输入格式错误');        }

二、switch

()只能是变量或值,不能是表达式

switch (变量){  case 值1:   代码段;       break;  case 值2:   代码段;       break;  ...  default:   代码段;}

案例:

var d = new Date();console.log(d); // 获取日期时间对象var week = d.getDay(); // 获取星期几switch (week) {  case 0:    console.log('星期天');    break;  case 1:     console.log('星期一');    break;  case 2:    console.log('星期二');    break;  case 3:    console.log('星期三');    break;  case 4:    console.log('星期四');    break;  case 5:    console.log('星期五');    break;  case 6:    console.log('星期六');    break;}

break必须添加,否则会继续往下执行

问题:什么时候用if,什么时候用switch

if:条件是一个范围 或者 是具体的值

switch:条件是一个具体的值

能够使用switch实现的判断,都可以使用if来实现 但是,能够使用if语句实现的判断,不一定能使用switch实现

三、switch和if 语句的合成案例

 //3.会员等级:1代表金牌会员,2是银牌会员,3是铜牌会员,4是普通会员,四种会员进店消费xxx元,其中普通会员无折扣,会员享受9折,如消费满1000元,金牌会员享受6折,银牌会员销售7折,铜牌会员享受8折。浏览器接收会员等级和消费金额,输出折后金额        var user = parseInt(prompt('请输入您的会员等级,1代表金牌会员,2是银牌会员,3是铜牌会员,非会员不需要填入此项'))        var money = parseFloat(prompt('请输入消费的金额'))        switch (user) {            case 1:                console.log('尊敬的金牌会员');                break;            case 2:                console.log('尊敬的银牌会员');                break;            case 3:                console.log('尊敬的桐牌会员');                break;            default:                console.log('普通会员');        }        if (money >= 1000) {            if (user == 1) {                console.log('会员折算后' + (money * 0.6));            } else if (user == 2) {                console.log('会员折算后' + (money * 0.7));            } else if (user == 3) {                console.log('会员折算后' + (money * 0.8));            }else{                console.log('您此次消费' + money);            }            console.log('您此次消费' + money);        } else if (money >= 0 && money < 1000) {            if (user == 1 ,2,3) {                console.log('您此次消费' + money);                console.log('会员折算后' + (money * 0.9));            }else{                console.log('您此次消费' + money);            }        }else{            console.log('请检查您的格式是否输入错误');        }