一.if语句有三种使用:单分支、双分支、多分支

 1.  单分支使用语法:括号内的条件为true时,进入大括号里执行代码
小括号内的结果若不是布尔类型时,会发生隐式转换转为布尔类型

练习1:

用户输入年成绩,如果年龄大于18,则提示恭喜你已经成年

let age = +prompt("请输入您年龄:");
         if (age >= 18) {
             alert("恭喜你已经成年")
         }

2.双分支if语法:

练习2:

让用户输入年份,判断这一年是闰年还是平年并输出
能被4整除但不能被100整除,或者被400整除的年份是闰年,否则都是平年

let year = prompt("输入年份")
        if (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
            alert(year + "是闰年")
        }
        else {
            alert(year + "是平年")
        }

3.多分支if语法

练习3

需求:根据输入不同时间,输出不同的问候语
12点以前, 输出上午好
18点以前, 输出下午好
20点以前, 输出晚上好

let time = +prompt('输入时间')
        if (time < 12) {
            alert('上午好')
        }
        else if (12 <= time < 18) {
            alert('下午好')
        }
        else if (18 <= time < 20) {
            alert('晚上好')
        }
        else {
            alert('请输入正确时间')
        }

二.switch 语句

(1)语法结构
switch 语句也是多分支语句,它用于基于不同的条件来执行不同的代码。当要针对变量设置一系列的特定值的选项时,就可以使用 switch

switch( 表达式 ){
case value1:
// 表达式 等于 value1 时要执行的代码
break;
case value2:
// 表达式 等于 value2 时要执行的代码
break;
default:
// 表达式 不等于任何一个 value 时要执行的代码

}

练习4

用户在弹出框里面输入一个水果,如果有就弹出该水果的价格, 如果没有该水果就弹出“没有此水果”。

let str = prompt("输入水果名称")
        switch (str) {
            case "苹果": alert(5); break;
            case "香蕉": alert(5); break;
            case "葡萄": alert(5); break;
            case "橙子": alert(5); break;
            case "哈密瓜": alert(5); break;
            default: alert("没有此水果")
        }

拓展: switch 语句和 if else if 语句的区别
① 一般情况下,它们两个语句可以相互替换
② switch...case 语句通常处理 case为比较确定值的情况, 而 if…else…语句更加灵活,常用于范围判断
(大于、等于某个范围)
③ switch 语句进行条件判断后直接执行到程序的条件语句,效率更高。而if…else 语句有几种条件,就
得判断多少次。
④ 当分支比较少时,if… else语句的执行效率比 switch语句高。
⑤ 当分支比较多时,switch语句的执行效率比较高,而且结构更清晰。