JavaScript基础知识16——分支语句
哈喽,大家好,我是雷工。
今天学习JavaScript基础知识的分支语句,以下为学习笔记。
1、程序三大流程控制语句
○写几句就从上往下执行几句,这种叫做顺序结构;
○有时要根据条件选择执行代码,这种叫分支结构;
○某段代码被重复执行,就叫循环结构;

2、分支语句
○分支语句可以让我们有选择性的执行想要执行的代码
○分支语句包含:
→ if分支语句
→ 三元运算符
→ switch语句
2.1、if分支语句
● if语句有三种使用:单分支、双分支、多分支
● 单条件分支语句:程序如果执行的时候,如果条件成立就执行某一行代码,如果条件不成立则执行其他代码
使用语法:
if(条件)
{满足条件要执行的代码
}
▶ 小括号内的条件为true时,进入大括号里执行代码。
▶ 小括号内的结果若不是布尔类型时,会发生隐式转换转换为布尔类型。
▶ 如果大括号内只有一个语句,大括号可以省略,但是,一般不提倡这么做~
● 双分支if语法:
if(条件)
{满足条件要执行的代码
}
else
{不满足条件时要执行的代码
}
语法解释:
1>程序先判断if中的条件是否成立(true),如果条件成立,则执行if后面对应的代码,else中的代码不会执行。
2>如果if中的条件不成立(False),程序只执行else后{}中的代码,if后{}内的代码不会执行。
● 多条件分支语句if:
应用场景:当有多个结果的时候,比如学习成绩可以分为:优秀、良好、及格、不及格四个选项。
语法:
if(条件1)
{满足条件1要执行的代码1
}
else if(条件2)
{满足条件2要执行的代码2
}
else if(条件3)
{满足条件3要执行的代码3
}
else
{以上条件均不满足时执行代码n
}
语法说明:
▶ 先判断条件1,若满足条件1就执行代码1,其他代码统统不执行;
▶ 若不满足则按顺序向下判断条件2,满足条件2执行代码2,其他代码不执行;
▶ 若依然不满足继续往下判断,依次类推 ;
▶ 若以上条件都不满足,执行else里的代码n ;
▶ 注:可以根据实际需要写N个条件,但这里演示只写2个;
单条件分支语句和多条件分支语句总结:
a)不管是单条件分支语句,还是多条件分支语句,else都可以省略(前提else中没有代码)
b)条件分支语句,如果只有一行代码,则{}可以省略。
例:if(3>0)alert(“雷工笔记”);
c)分支语句可以相互嵌套。
2.2、三元表达式
就是单条件分支语句的另外一种写法
语法:
条件 ? 代码1 : 代码2;
语法说明:
a)判断条件的真假,如果为真,则执行代码1,后面的代码2不执行;
b)如果条件不成立,则执行代码2,前面的代码1不执行;
● 一般用来取值

2.3、switch分支语句
switch 分支语句就是多条件分支语句的另外一种写法
语法:
switch(数据/变量)
{case 值1:代码1;break;case 值2:代码2;break;case 值3:代码3;break;default:代码n;break;
}
释义:
▶ 找到跟小括号里数据/变量全等的case值,并执行里面对应的代码
▶ 若没有全等 === 的则执行 default里面的代码
▶ 例:数据若跟值1全等,则执行代码1
注意事项:
1>. switch case语句一般用于等值判断,不适合于区间判断;
2>. switch case一般需要配合break关键字使用 没有break会造成case穿透(default后面的break可以省略);
3>.什么情况下使用switch语法?什么情况下使用多条件分支if语句?
a)在任何情况下都可以使用switch语句或者多条件分支语句;
b)如果变量的值是某些固定的值,推荐使用switch;
示例1:一年有12个月,1月-12月;
示例2:一年有4个季节,春,夏,秋,冬
c)如果变量的值是一个范围,推荐使用if多分支语句
示例:年龄在18-35岁之间。
4> switch 中变量的值和case后面的值必须是完全相等(数据类型和值都一样)
示例:
let num='1'
switch(数据/变量)
{case 1:alert('欢迎关注【李工笔记】');break;case 10:alert('欢迎关注【王工笔记】');break;default:alert('欢迎关注【雷工笔记】');break;
}//结果:欢迎关注【雷工笔记】
相关文章:
JavaScript基础知识16——分支语句
哈喽,大家好,我是雷工。 今天学习JavaScript基础知识的分支语句,以下为学习笔记。 1、程序三大流程控制语句 ○写几句就从上往下执行几句,这种叫做顺序结构; ○有时要根据条件选择执行代码,这种叫分支结构…...
web开发初级工程师学习笔记
web开发初级工程师学习笔记 前端开发工具实验1 VS Code 初体验介绍 前端开发工具 实验1 VS Code 初体验 介绍 VS Code 环境提供的是一个可以在浏览器中使用原生 VS Code 编辑代码的程序。在该环境中,你可以使用到与本地安装近乎一致的 VS Code 程序来编辑代码文件…...
Linux下Samba服务安装及启用全攻略
Linux下Samba服务安装及启用全攻略 前言一、安装SSH Server二、安装Samba Server1.安装net-tool2.建立账号的samba3.windows通过Samba与linux共享文件4.使用远程工具登录Linux 总结 前言 提示:本文详解了在Linux系统下如何安装和启用Samba服务,涵盖了从…...
【C++】引用’‘的深入解析
💐 🌸 🌷 🍀 🌹 🌻 🌺 🍁 🍃 🍂 🌿 🍄🍝 🍛 🍤 📃个人主页 :阿然成长日记 …...
java链式编程对象序列化问题
在使用 openfeign 进行服务之间数据传输时发现了一个问题,数据在下游正常处理,响应到调用端数据也读取到了,但是就是 jackson 转对象序列化时出了问题,异常如下 Failed to complete request: feign.codec.DecodeException: Type d…...
关于Redis(Redisson)超时问题的分析
概述 生产环境中流量高峰期会出现短时间的redis异常,主要报错如下: Redis server response timeoutRedisTimeoutException: Command execution timeout for command: (PING)Command still hasn’t been written into connection! 根据redisson官方所述…...
Redis 主从复制,哨兵,集群——(2)哨兵篇
目录 1. Redis 哨兵是什么? 2. Redis 哨兵有什么用? 2.1 主动监控 2.2 消息通知 2.3 故障转移 2.4 配置中心 3. Redis 哨兵数量配备要求 4. 哨兵配置文件详解 5. quorum 投票数详解 5.1 quorum 的含义 5.2 网络抖动导致主观下线 5.3 quorum …...
C++入门笔记分享
有道云笔记...
使用conda install一直卡在solving environment的解决方法
使用国内镜像源,但install仍旧一直卡在solving environment,超过10分钟就不用等了; 检查C:\Users\UserName 路径下的.condarc文件 将这个defaults这一行删掉即可...
神经网络和AI的关系
神经网络(Neural Networks)和人工智能(Artificial Intelligence,AI)之间存在紧密的关系,可以概括为以下几点: 神经网络是AI的子领域:神经网络是人工智能的一个子领域,它是…...
[牛客]计算机网络习题笔记_1020
1、物理层:以太网 调制解调器 电力线通信(PLC) SONET/SDH G.709 光导纤维 同轴电缆 双绞线等。 2、数据链路层(网络接口层包括物理层和数据链路层):Wi-Fi(IEEE 802.11) WiMAX(IEEE 802.16) ATM DTM 令牌环 以太网 FDD…...
蓝牙音视频远程控制协议(AVRCP)介绍
零.声明 本专栏文章我们会以连载的方式持续更新,本专栏计划更新内容如下: 第一篇:蓝牙综合介绍 ,主要介绍蓝牙的一些概念,产生背景,发展轨迹,市面蓝牙介绍,以及蓝牙开发板介绍。 第二篇:Trans…...
家庭WIFI路由器、无线网卡购买指南
一、参考资料 【Wi-Fi】802.11/802.11b/802.11g/802.11n/802.11a/802.11ac/802.11ax/802.11be 从带宽到路由,从有线到无线,从需求到选购,从布网到实测,全部说尽。基础篇(1) 【一文详解】802.11a/b/g/n/ac/…...
Matlab2022b软件如何切换中/英文界面?
在中文Windows操作系统中,MATLAB2015b之后版本安装默认为中文版,但有部分用户还是习惯使用英文界面下的MATLAB(个人偏好),下面以R2022b版分享一下中/英文界面的切换方法,超简单。 一、中文切换为英文界面&…...
通过后端数据交互,实现【会议Oa小程序】首页数据渲染
🏅我是默,一个在CSDN分享笔记的博主。📚📚 🌟在这里,我要推荐给大家我的专栏《微信小程序 》。🎯🎯 🚀无论你是编程小白,还是有一定基础的程序员,…...
I.MX6U开发板上的Qt串口编程
真正串口通讯所需的功能是比较多的,此处的上位机只实现发送和接收功能。因为Linux、windows和开发板上均有串口,所以所开发的上位机在其上都是可以运行的。 文章目录 1. 资源简介2. 应用实例2.1 项目简介:2.2 03_serialport.pro2.3 mainwind…...
深入理解多线程编程和 JVM 内存模型
文章目录 1. 理解进程和线程的概念进程(Process)线程(Thread) 2. 理解竞态条件和死锁竞态条件(Race Condition)死锁(Deadlock) 3. JVM 内存模型堆(Heap)栈&am…...
QML(25)——文本输入框组件的区别(TextField TextInput TextArea TextEdit)
目录 效果展示适用场景文本组件TextLabelText和Label的区别 单行文本输入框TextFieldTextInputTextField 和 TextInput的区别 多行文本输入框TextAreaTextArea 和 TextEdit 的区别 效果展示 适用场景 场景组件属性短文本Text长文本 末尾省略Textelide: Text.ElideRight文本设置…...
SpringBoot连接MySQL密码错误,报错:Access denied for user
记:一次连接MySQL报密码错误,Access denied for user 检查步骤: 核对用户和密码是否正确,用工具登陆试下。如果配置文件是yml格式,配置密码是123456这种纯数字,记得加上单/双引号。检查云上数据库配置&am…...
如何使用visual studio 2010构建SQLite3.lib文件
sqlite3官网只提供了dll,并没有lib文件。需要自己生成sqlite3.lib。因项目升级到x64,以前并没有生成64位的链接库,需要自己创建。本人电脑操作系统windows 10, 开发环境为visual studio 2010。下面是详细生成过程。 1. 从源下载源(…...
无法与IP建立连接,未能下载VSCode服务器
如题,在远程连接服务器的时候突然遇到了这个提示。 查阅了一圈,发现是VSCode版本自动更新惹的祸!!! 在VSCode的帮助->关于这里发现前几天VSCode自动更新了,我的版本号变成了1.100.3 才导致了远程连接出…...
渲染学进阶内容——模型
最近在写模组的时候发现渲染器里面离不开模型的定义,在渲染的第二篇文章中简单的讲解了一下关于模型部分的内容,其实不管是方块还是方块实体,都离不开模型的内容 🧱 一、CubeListBuilder 功能解析 CubeListBuilder 是 Minecraft Java 版模型系统的核心构建器,用于动态创…...
使用van-uploader 的UI组件,结合vue2如何实现图片上传组件的封装
以下是基于 vant-ui(适配 Vue2 版本 )实现截图中照片上传预览、删除功能,并封装成可复用组件的完整代码,包含样式和逻辑实现,可直接在 Vue2 项目中使用: 1. 封装的图片上传组件 ImageUploader.vue <te…...
MODBUS TCP转CANopen 技术赋能高效协同作业
在现代工业自动化领域,MODBUS TCP和CANopen两种通讯协议因其稳定性和高效性被广泛应用于各种设备和系统中。而随着科技的不断进步,这两种通讯协议也正在被逐步融合,形成了一种新型的通讯方式——开疆智能MODBUS TCP转CANopen网关KJ-TCPC-CANP…...
ArcGIS Pro制作水平横向图例+多级标注
今天介绍下载ArcGIS Pro中如何设置水平横向图例。 之前我们介绍了ArcGIS的横向图例制作:ArcGIS横向、多列图例、顺序重排、符号居中、批量更改图例符号等等(ArcGIS出图图例8大技巧),那这次我们看看ArcGIS Pro如何更加快捷的操作。…...
基于matlab策略迭代和值迭代法的动态规划
经典的基于策略迭代和值迭代法的动态规划matlab代码,实现机器人的最优运输 Dynamic-Programming-master/Environment.pdf , 104724 Dynamic-Programming-master/README.md , 506 Dynamic-Programming-master/generalizedPolicyIteration.m , 1970 Dynamic-Programm…...
MySQL账号权限管理指南:安全创建账户与精细授权技巧
在MySQL数据库管理中,合理创建用户账号并分配精确权限是保障数据安全的核心环节。直接使用root账号进行所有操作不仅危险且难以审计操作行为。今天我们来全面解析MySQL账号创建与权限分配的专业方法。 一、为何需要创建独立账号? 最小权限原则…...
如何更改默认 Crontab 编辑器 ?
在 Linux 领域中,crontab 是您可能经常遇到的一个术语。这个实用程序在类 unix 操作系统上可用,用于调度在预定义时间和间隔自动执行的任务。这对管理员和高级用户非常有益,允许他们自动执行各种系统任务。 编辑 Crontab 文件通常使用文本编…...
省略号和可变参数模板
本文主要介绍如何展开可变参数的参数包 1.C语言的va_list展开可变参数 #include <iostream> #include <cstdarg>void printNumbers(int count, ...) {// 声明va_list类型的变量va_list args;// 使用va_start将可变参数写入变量argsva_start(args, count);for (in…...
NPOI操作EXCEL文件 ——CAD C# 二次开发
缺点:dll.版本容易加载错误。CAD加载插件时,没有加载所有类库。插件运行过程中用到某个类库,会从CAD的安装目录找,找不到就报错了。 【方案2】让CAD在加载过程中把类库加载到内存 【方案3】是发现缺少了哪个库,就用插件程序加载进…...
