js选择语句

文章目录

  • 1. if 分支语句
    • 1.1. 示例代码
    • 1.2. 运行结果
  • 2. if 双分支语句
  • 3. if 多分支语句
  • 4. switch 语句(了解)
    • 4.1. 注意
    • 4.2. case 穿透现象
    • 4.3. case 穿透产生的原因
  • 5. switch 语句与选择语句区别别
    • 5.1. 语法上的区别
    • 5.2. 应用场景上的区别
  • 6. 三元表达式
    • 6.1. 语法法
    • 6.2. 示例代码
  • 7. 练习 1
    • 7.1. 题目
    • 7.2. 示例代码
    • 7.3. 运行结果
  • 8. 练习 2
    • 8.1. 题目
    • 8.2. 示例代码
    • 8.3. 运行结果
  • 9. 练习 3
    • 9.1. 题目
      • 9.1.1. 示例代码
  • 10. 练习 4
    • 10.1. 题目
    • 10.2. 代码实现 1
    • 10.3. 代码实现 2
    • 10.4. 运行结果

1. if 分支语句

语法:

if (条件表达式) {// 满足条件要执行的语句
}

if 中的内容如果为true,就执行大括号的代码块,如果为false执行else代码块。

1.1. 示例代码

<!DOCTYPE html>
<html lang="zh-CN"><head><meta charset="UTF-8" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>js第二天</title></head><body><script>// if分支语句const condition = 6 > 4;if (condition) {// 代码块1alert("yes");} else {// 代码块2alert("no");}</script></body>
</html>

1.2. 运行结果

image-20240206221104526

2. if 双分支语句

如果有两个条件的时候,可以使用 if else 双分支语句。

if (条件表达式) {// 满足条件要执行的语句
} else {// 不满足条件要执行的语句
}

3. if 多分支语句

使用场景: 适合于有多个条件的时候。

语法:

         if(条件表达式1){语句体1}else if(条件表达式2){语句体2}else if(条件表达式3){语句体3}else if(条件表达式4){语句体4}...else{语句体2}

从上往下,依次判断每一个条件,如果满足,就会执行对应的语句体,剩下的即使满足也不会执行。

4. switch 语句(了解)

switch case传入一个变量,判断这个变量,是否符合case中的条件,符合条件,就执行下面的代码块,每个代码块用break。如果都不满足,就执行 default 中的语句。

语法:

switch语句用来定义多分支条件语句,语法如下:switch(表达式){case1:执行体1;break;case2:执行体2;break;...default:默认执行体;break; //default语句中break可有可无。}

4.1. 注意

  1. switch case一般需要配合break关键字使用 没有break会造成case穿透。
  2. 当前结果只有固定几个取值,可以使用 switch。
  3. if 多分支语句开发要比 switch 更重要,使用也更多。

4.2. case 穿透现象

case 穿透会从满足条件的那个语句开始,依次执行,即使后面的 case 不满足条件,也会执行,直到出现 break 才会跳出 switch 语句。

4.3. case 穿透产生的原因

如果忘记加 break,就会产生 case 的穿透(break 是可以用于结束 switch 语句)。

5. switch 语句与选择语句区别别

5.1. 语法上的区别

  1. ifif-else语句一次只能判断一个条件,而if-elseifswitch一次可以判断多个条件。

  2. if-elseifswitch的结构非常类似,所有的switch语句都可以使用if-elseif改写。

  3. 所有的if-elseif不一定能用switch改写。

5.2. 应用场景上的区别

if 语句主要用于范围的判断,switch 主要用于等值判断
如果结果确定有几个值,可以考虑使用 switch。

6. 三元表达式

6.1. 语法法

条件 ? 表达式1 : 表达式2
// 执行过程:
// 1. 如果条件为真,则执行表达式1
// 2. 如果条件为假,则执行表达式2

6.2. 示例代码

// 补0
// 1. 用户输入
let num = prompt("请您输入一个数字:");
// 2. 判断输出- 小于10才补0
// num = num < 10 ? 0 + num : num
num = num >= 10 ? num : 0 + num;
alert(num);

QQ录屏20240206221900 -original-original

7. 练习 1

7.1. 题目

  1. 输入你用的手机

  2. 如果输入的是苹果,alert(“土豪”)

  3. 如果是华为,alert(“遥遥领先!!!”)

  4. 如果是小米,alert(“性价比”)

7.2. 示例代码

const phone = prompt("请输入你的手机牌子:");
const resName = phone.slice(0, 2);
switch (resName) {case "苹果":alert("土豪");break;case "华为":alert("遥遥领先!!!");break;case "小米":alert("性价比");break;default:alert("不认识你的杂牌子手机");break;
}

7.3. 运行结果

QQ录屏20240206223720 -original-original

8. 练习 2

8.1. 题目

请输入您的工作年限:

  1. 如果你的工作年限小于 1 年,你的年假是 5 天

  2. 如果你的工作年限小于 3 年,你的年假是 7 天

  3. 如果你的工作年限大于等于 3 年,你的年假是 15 天

8.2. 示例代码

let workYears = prompt("请输入您的工作年限:");// 你的年假,初始化为null
let hoilday = null;
if (workYears < 0) {hoilday = 0;
} else if (workYears < 1) {hoilday = 5;
} else if (workYears < 3) {hoilday = 7;
} else if (workYears >= 3) {hoilday = 15;
}
//弹出对话框
alert("你的年假是" + hoilday);

8.3. 运行结果

QQ录屏20240206223856 -original-original

9. 练习 3

9.1. 题目

老爸根据成绩奖励儿子(成绩在 0-100 之间)

  1. 考了 90-100,奖励兰博基尼,带电池
  2. 考了 80-90,奖励自行车
  3. 考了 70-80,奖励滑板
  4. 70 分以下,奖励胖揍一顿

9.1.1. 示例代码

//获取儿子分数
let score = prompt("请输入儿子的分数");//判断
//需要一开始对成绩做一个范围的限定
if (score < 0 || score > 100) {alert("你输入的成绩不合法,请输入0-100的整数");
} else {if (score >= 90) {alert("奖励兰博基尼,带电池");} else if (score >= 80) {alert("奖励自行车");} else if (score >= 70) {alert("奖励滑板");} else {alert("奖励胖揍一顿");}
}

10. 练习 4

10.1. 题目

输入一个月份,判断月份属于哪个季节: 12,1,2 冬季 3,4,5 春季 6,7,8 夏季 9,10,11 秋季。

10.2. 代码实现 1

//获取用户输入的月份
let month = prompt("请输入一个月份");//判断
switch (Number(month) //需要做一个强转,转成数值类型
) {case 12:case 1:case 2:alert("冬季");break;case 3:case 4:case 5:alert("春季");break;case 6:case 7:case 8:alert("夏季");break;case 9:case 10:case 11:alert("秋季");break;default:alert("你输入的不是一个月份");break;
}

10.3. 代码实现 2

//获取用户输入的月份
let month = prompt("请输入一个月份");//判断
if (month == 12 || month == 1 || month == 2) {alert("冬季");
} else if (month == 3 || month == 4 || month == 5) {alert("春季");
} else if (month == 6 || month == 7 || month == 8) {alert("夏季");
} else if (month == 9 || month == 10 || month == 11) {alert("秋季");
} else {alert("你输入的不是一个月份");
}

10.4. 运行结果

QQ录屏20240323195122 -original-original

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/287747.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

本地GPU调用失败问题解决2修改pytorch版本(失败)

一、基于现有anaconda中的环境复制新环境 1、管理员打开anaconda 进入当前环境&#xff1a; 输入 conda env list conda activate env_pytorch1121 2、复制当前环境为新环境 conda create --name env_pytorch2.2.0cu --clone env_pytorch1121 2&#xff09;删除其中的p…

库存控制秘诀:鞋服品牌如何避免库存积压风险

库存积压对于鞋服品牌而言&#xff0c;是一个普遍而又棘手的问题。过多的库存不仅占用了大量的资金&#xff0c;还可能导致产品过时、贬值&#xff0c;甚至影响品牌的长期发展。因此&#xff0c;如何有效地控制库存&#xff0c;避免积压风险&#xff0c;成为了鞋服品牌必须面对…

window下迁移SVN仓库到新的windows服务器

一、背景 一个基于 Windows 的 SVN 服务器&#xff0c;用于管理团队的代码库。该 SVN 仓库托管着公司的软件项目&#xff0c;包括多个分支和版本的代码。我们的团队规模约为 50 人&#xff0c;分布在不同的地理位置&#xff0c;他们都依赖 SVN 仓库来进行代码版本控制和协作开…

深度学习十大算法之图神经网络(GNN)

一、图神经网络的基础 图的基本概念 图是数学中的一个基本概念&#xff0c;用于表示事物间复杂的关系。在图论中&#xff0c;图通常被定义为一组节点&#xff08;或称为顶点&#xff09;以及连接这些节点的边。每个边可以有方向&#xff0c;称为有向边&#xff0c;或者没有方向…

C++剑指offer与高频面试题源码解答与分析

这是博主在当初秋招刷题时候记录的剑指offer第二版以及一些高频题的C源码和解法分析&#xff0c;可以说把这上面的题练好了面试不虚&#xff0c;最后也顺利帮助我拿下baidu ali meituan等多家大厂offer。整篇文章写了大概5W个字&#xff0c;也是积累了很长一段时间的作品&#…

函数进阶-Python

师从黑马程序员 函数中多个返回值的接收 def test_return():return 1,"hello",3x,y,ztest_return() print(x) print(y) print(z) 多种参数的使用 函数参数种类 位置参数 关键字参数 def user_info(name,age,gender):print(f"姓名是{name},年龄是:{age},性别是…

小学生古诗文大会往届真题测一测和独家详细解析(题目来自官方)

新学期开学一眨眼已经过了一个多月了&#xff0c;有家长朋友开始关心2024年上海市小学生古诗文大会什么时候开始&#xff1f;如何准备小学生古诗文大会&#xff1f;如何激发孩子学习古诗词的兴趣&#xff1f;如何提高小学古诗词和古诗文大会的学习成绩&#xff1f;... 最近&…

增强现实(AR)在广告中的力量

The Power of AR in Advertising 写在前面 增强现实&#xff08;AR -Augmented Reality&#xff09;是指借助软件、应用程序和智能手机、平板电脑或耳机等设备&#xff0c;为日常生活添加视觉和音频元素的技术。如今&#xff0c;品牌和广告商可以在营销活动中使用AR&#xff0…

解决mysql问题: this is incompatible with sql_mode=only_full_group_by

今天在部署一趟测试环境的服务&#xff0c;各种配置文件都配好了&#xff0c;启动服务后台报错&#xff0c;解决后记录一下&#xff0c;小伙伴们也可以看看&#xff01; ### Cause: java.sql.SQLSyntaxErrorException: Expression #1 of SELECT list is not in GROUP BY clause…

python爬虫-----输入输出与流程控制语句(第四天)

&#x1f388;&#x1f388;作者主页&#xff1a; 喔的嘛呀&#x1f388;&#x1f388; &#x1f388;&#x1f388;所属专栏&#xff1a;python爬虫学习&#x1f388;&#x1f388; ✨✨谢谢大家捧场&#xff0c;祝屏幕前的小伙伴们每天都有好运相伴左右&#xff0c;一定要天天…

Ubuntu Desktop - Updates (不升级到新版本)

Ubuntu Desktop - Updates [不升级到新版本] 1. UpdatesReferences 1. Updates System Settings -> Software & Updates -> Updates ubuntu-16.04.3-desktop-amd64.iso 不升级到新版本 ​ References [1] Yongqiang Cheng, https://yongqiang.blog.csdn.net/

【linux深入剖析】基础IO操作 | 使用Linux库函数实现读写操作 | 文件相关系统调用接口

&#x1f341;你好&#xff0c;我是 RO-BERRY &#x1f4d7; 致力于C、C、数据结构、TCP/IP、数据库等等一系列知识 &#x1f384;感谢你的陪伴与支持 &#xff0c;故事既有了开头&#xff0c;就要画上一个完美的句号&#xff0c;让我们一起加油 目录 前言1.复习C文件IO相关操…

UE4_旋转节点总结一

一、Roll、Pitch、Yaw Roll 围绕X轴旋转 飞机的翻滚角 Pitch 围绕Y轴旋转 飞机的俯仰角 Yaw 围绕Z轴旋转 飞机的航向角 二、Get Forward Vector理解 测试&#xff1a; 运行&#xff1a; 三、Get Actor Rotation理解 运行效果&#xff1a; 拆分旋转体测试一&a…

linux将未分配空间分配到指定挂载点

lsblk命令查看硬盘&#xff0c;空间有200G&#xff0c;子分区加起来才100个G&#xff0c;有100个G未使用 lsblk给硬盘分配盘符 fidisk /dev/vda n 回车 回车 w将所有未分配的空间分区&#xff0c;这里有100个GB 查看分配的分区 /dev/vda4 fidisk -lpvcreate /dev/vda4查看…

华为OD机试真题-推荐多样性-2024年OD统一考试(C卷)

题目描述: 推荐多样性需要从多个列表中选择元素,一次性要返回N屏数据(窗口数量),每屏展示K个元素(窗口大小),选择策略: 1. 各个列表元素需要做穿插处理,即先从第一个列表中为每屏选择一个元素,再从第二个列表中为每屏选择一个元素,依次类推 2. 每个列表的元素尽量均…

双亲委派机制总结

回顾了一下双亲委派机制&#xff0c;在这记录记录&#xff0c;下一篇会基于打破双亲委派机制来更新 1. 类加载&#xff1a; 多个java文件经过编译打包后生成可运行jar包&#xff0c;最后启动程序。首先需要通过类加载器把主类加载到JVM。主类在运行过程中如果使用到其他类&a…

2016年认证杯SPSSPRO杯数学建模D题(第一阶段)NBA是否有必要设立四分线解题全过程文档及程序

2016年认证杯SPSSPRO杯数学建模 D题 NBA是否有必要设立四分线 原题再现 NBA 联盟从 1946 年成立到今天&#xff0c;一路上经历过无数次规则上的变迁。有顺应民意、皆大欢喜的&#xff0c;比如 1973 年在技术统计中增加了抢断和盖帽数据&#xff1b;有应运而生、力挽狂澜的&am…

lvgl 窗口 windows lv_port_win_visual_studio 版本 已解决

不知道的东西&#xff0c;不知道lvgl窗口。一切从未知开始 lv_port_win_visual_studio 主分支 对应的分支 v7版本更新git submodule update --init --recursive同步 lvgl代码随后打开 visualSudio 打开.sln 文件 编译 release模式 允许 一切正常代码部分

建筑结构设计的内容与要求,建筑工程结构设计资料大全

一、资料描述 本套建筑设计资料&#xff0c;大小4.62G&#xff0c;1个压缩文件。 二、资料目录 0-结构设计 1-快速建模方法 A-satwe资料 B-剪力墙资料 C-地下室资料 D-基础 E-楼梯 F-水池 G-砖混结构 H-挡土墙 I-框剪结构 J-常用规范 K-配筋率计算方法 L-底框结…

jenkins配置源码管理的git地址时,怎么使用不了 credential凭证信息

前提 Jenkins使用docker部署 问题 &#xff08;在jenlins中设置凭证的方式&#xff09;在Jenkins的任务重配置Git地址&#xff0c;并且设置了git凭证,但是验证不通过&#xff0c;报错; 无法连接仓库&#xff1a;Command "git ls-remote -h -- http://192.1XX.0.98:X02/…