购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

2.4.1 选择结构

选择结构根据条件的不同,执行不同的分支语句,从而得到不同的结果。例如,若学生成绩大于60,则该学生的成绩及格,否则成绩不及格。若淘宝用户的积分在4~250,则其信用等级为“红心”;在250~10000,则信用等级为“蓝钻”等。

选择结构包括if条件语句和switch条件语句两种。

1.if条件语句

在JavaScript中,if条件语句可分为if、if…else、if…else if…else 3种。

1)if语句

if语句的语法格式如下:

如果条件表达式的结果为真,则执行代码块。

【例2-7】判断闰年

例2-7在Chrome浏览器控制台中的运行结果为:

2020年是闰年

2)if…else语句

if…else语句的语法格式如下:

if…else语句在条件表达式的结果为真时,执行代码块1,否则执行代码块2。

【例2-8】输出较大的数字

例2-8在Chrome浏览器控制台中的运行结果为:

较大的数是20

3)if…else if…else语句

if…else语句只能用于包含两个分支结果的情况,当分支结果更多时,可以使用if…else if…else语句。

【例2-9】判断会员积分等级

某电商网站根据用户积分数量共设定四个会员等级:积分不超过1000分为普通会员;积分大于1000分且不超过5000分为黄金会员;积分大于5000分且不超过10000分为铂金会员;积分大于10000分为超级会员。现有一用户积分为3000分,判断其会员等级。

例2-9在Chrome浏览器控制台中的运行结果为:

黄金会员

【例2-10】根据空气质量指数进行生活建议

AQI(Air Quality Index,空气质量指数)根据空气中的各种成分占比,将监测的空气浓度简化为单一的概念性数值形式,它将空气污染程度和空气质量状况分级表示,适合于表示城市的短期空气质量状况和变化趋势。空气质量指数、对应等级及相关建议如表2-12所示。

表2-12 空气质量指数、对应等级及相关建议

案例代码如下:

在上述代码中,变量x保存用户输入的值,根据用户输入的AQI数值的不同,给变量s赋相应的字符串值,最后在控制台中输出。当用户输入320时,例2-10在Chrome浏览器控制台中的输出结果为:

空气质量为严重污染,尽量不要留在户外。

2.switch语句

当表达式的值可以列举时,可以采用switch语句,其语法格式为:

switch语句根据变量或者表达式的值,从上往下依次与每个case后面的常量值进行严格相等的比较,直至找到与变量或表达式严格相等的常量,进而执行该分支下的语句块。如果没有匹配的case分支,则执行default分支。

需要注意的是:

(1)每个case分支的语句块后面都会带一个break语句,否则,执行完当前case后,会继续执行下一个case分支。

(2)switch中的表达式与case语句中的取值是严格相等模式。

提示: switch语句适合处理判断分支较多的情况,代码可读性好。if语句适合处理判断分支较少的情况。

【例2-11】判断用户角色

在线考试系统中支持3种角色登录,分别是管理员、教师、学生,不同的角色登录后看到的系统页面不同,能够使用的功能也不尽相同。使用switch语句可以根据不同角色,显示不同的页面。项目开发中,可通过数字标识不同的角色,本例分别用数字0、1、2代表管理员、教师、学生角色。

例2-11在Chrome浏览器控制台中的运行结果为:

显示教师角色页面 pSiKRpZbJGZFO3OswMCKMSxjiaT76isGfslyMz/E/AnpA8FfwzFHvXBV7nWlhf/4

点击中间区域
呼出菜单
上一章
目录
下一章
×