当前位置: 首页 > news >正文

【Java 进阶篇】JavaScript流程控制语句详解

在这里插入图片描述

JavaScript是一门高级编程语言,具备丰富的流程控制语句,用于控制程序的执行流程。在本篇博客中,我们将深入探讨JavaScript的流程控制语句,包括条件语句、循环语句、以及其他一些控制语句。这篇博客将逐步介绍这些概念,并提供大量的示例代码,以帮助您更好地理解和运用JavaScript的流程控制功能。

条件语句

条件语句允许我们根据条件的真假来决定执行不同的代码块。JavaScript提供了ifelseelse ifswitch等条件语句。

if语句

if语句是最基本的条件语句,用于根据一个条件执行不同的代码块。它的语法如下:

if (条件) {// 如果条件为真,执行这里的代码
}

如果条件为真,if语句中的代码块将被执行,否则将被跳过。下面是一个示例:

let age = 18;if (age >= 18) {console.log("你已成年");
}

在这个例子中,如果age大于等于18,就会输出"你已成年"。

else语句

else语句可用于在条件为假时执行另一个代码块。它的语法如下:

if (条件) {// 如果条件为真,执行这里的代码
} else {// 如果条件为假,执行这里的代码
}

下面是一个示例:

let age = 16;if (age >= 18) {console.log("你已成年");
} else {console.log("你未成年");
}

在这个例子中,如果age小于18,就会输出"你未成年"。

else if语句

else if语句可用于在多个条件之间进行选择。它的语法如下:

if (条件1) {// 如果条件1为真,执行这里的代码
} else if (条件2) {// 如果条件2为真,执行这里的代码
} else {// 如果以上条件都为假,执行这里的代码
}

下面是一个示例:

let score = 85;if (score >= 90) {console.log("优秀");
} else if (score >= 70) {console.log("良好");
} else {console.log("及格");
}

在这个例子中,根据分数不同,会输出不同的评价。

switch语句

switch语句用于根据不同的条件值执行不同的代码块。它的语法如下:

switch (表达式) {case1:// 如果表达式的值等于值1,执行这里的代码break;case2:// 如果表达式的值等于值2,执行这里的代码break;// 更多的casedefault:// 如果表达式的值都不等于以上任何一个值,执行这里的代码
}

下面是一个示例:

let day = "周一";switch (day) {case "周一":console.log("开始新的一周");break;case "周六":case "周日":console.log("周末休息");break;default:console.log("工作日");
}

在这个例子中,根据day的不同取值,会输出不同的信息。

循环语句

循环语句允许我们多次执行同一段代码。JavaScript提供了forwhiledo...while等不同类型的循环语句。

for循环

for循环是最常用的循环语句,它允许我们指定循环的起始条件、结束条件和步进值。它的语法如下:

for (初始化; 条件; 步进) {// 在每次循环中执行的代码
}

下面是一个示例:

for (let i = 0; i < 5; i++) {console.log("这是第 " + (i + 1) + " 次循环");
}

在这个例子中,for循环将会执行5次,分别输出不同的信息。

while循环

while循环在每次迭代之前检查一个条件,并在条件为真时执行循环体。它的语法如下:

while (条件) {// 只要条件为真,就一直执行这里的代码
}

下面是一个示例:

let i = 0;while (i < 5) {console.log("这是第 " + (i + 1) + " 次循环");i++;
}

在这个例子中,while循环也会执行5次,输出不同的信息。

do…while循环

do...while循环与while循环类似,但它在每次迭代之后检查条件。这意味着循环体至少会执行一次。它的语法如下:

do {// 执行这里的代码
} while (条件);

下面是一个示例:

let i = 0;do {console.log("这是第 " + (i + 1) + " 次循环");i++;
} while (i < 5);

do...while循环也会执行5次,与while循环不同的是,它保证了至少执行一次。

其他控制语句

除了条件语句和循环语句,JavaScript还提供了其他一些控制语句,例如breakcontinuereturn等。

break语句

break语句用于跳出循环。当在循环内使用break时,循环将被立即终止,程序将执行循环后的代码。下面是一个示例:

for (let i = 0; i < 10; i++) {if (i === 5) {break;}console.log(i);
}

在这个例子中,当i等于5时,break语句被触发,循环终止。

continue语句

continue语句用于跳过当前循环的剩余部分,继续下一次循环。下面是一个示例:

for (let i = 0; i < 10; i++) {if (i === 5) {continue;}console.log(i);
}

在这个例子中,当i等于5时,continue语句被触发,跳过当前循环,继续下一次循环。

return语句

return语句用于从函数中返回一个值,并终止函数的执行。它的语法如下:

function myFunction() {// 执行一些操作return;
}

return语句通常在函数中使用,用于返回函数的结果。下面是一个示例:

function add(a, b) {return a + b;
}let result = add(3, 5);
console.log(result); // 输出8

在这个例子中,add函数返回了ab的和。

总结

JavaScript的流程控制语句允许我们根据条件和循环需求来控制程序的执行流程。通过条件语句,我们可以根据不同的条件执行不同的代码块,而循环语句则允许我们多次执行相同的代码块。此外,JavaScript还提供了其他控制语句,如breakcontinuereturn,用于在特定情况下修改程序的行为。

希望这篇博客对您理解JavaScript的流程控制语句有所帮助。如果您想要进一步学习JavaScript,建议您深入学习每个控制语句的不同用途,并进行更多的实际练习。这将有助于您更好地应用JavaScript来解决各种编程问题。

在未来的博客中,我们将继续深入探讨JavaScript的不同主题,包括函数、对象、数组和事件处理等。如果您对某个特定主题有兴趣,请随时告诉我们,我们将尽力提供更多有关该主题的信息和示例代码。

感谢您阅读本篇博客,希望您对JavaScript的流程控制语句有了更清晰的理解。如果您有任何问题或需要进一步的帮助,请随时向我们提问。祝愉快的编程!

作者信息

作者 : 繁依Fanyi
CSDN: https://techfanyi.blog.csdn.net
掘金:https://juejin.cn/user/4154386571867191

相关文章:

【Java 进阶篇】JavaScript流程控制语句详解

JavaScript是一门高级编程语言&#xff0c;具备丰富的流程控制语句&#xff0c;用于控制程序的执行流程。在本篇博客中&#xff0c;我们将深入探讨JavaScript的流程控制语句&#xff0c;包括条件语句、循环语句、以及其他一些控制语句。这篇博客将逐步介绍这些概念&#xff0c;…...

【Page-level Heap Fengshui -- Cross-Cache Overflow】corCTF2022-cache-of-castaways

前言 什么叫 Cross Cache 呢&#xff1f;其实就是字面意思&#xff0c;我们知道内核中的大部分结构体都有自己的专属 slab 内存池。那现在我们可以想象一下这个场景&#xff0c;我们拥有一个特定 kmem-cache 的溢出漏洞&#xff0c;那么我们该如何利用呢&#xff1f; 程序分析…...

vue-mixin

1.vue中&#xff0c;混入(mixin)是一种特殊的使用方式。一个混入对象可以包含任意的组件配置选项(data, props, components, watch,computed…)可以根据需求"封装"一些可复用的单元&#xff0c;并在使用时根据一定的策略合并到组件的选项中&#xff0c;使用时和组件自…...

力扣刷题 day43:10-13

1.完全平方数 给你一个整数 n &#xff0c;返回 和为 n 的完全平方数的最少数量 。 完全平方数 是一个整数&#xff0c;其值等于另一个整数的平方&#xff1b;换句话说&#xff0c;其值等于一个整数自乘的积。例如&#xff0c;1、4、9 和 16 都是完全平方数&#xff0c;而 3 …...

3、在docker 容器中安装tomcat

&#xff11;、在服务器上查找tomcat镜像,查看前5条 docker search tomcat --limit 5​​​​​​​ 2、拉取镜像到本地 拉取官方的tomcat到本地 docker pull tomcat:9.0.34-jdk8 3、查看本地镜像 docker images |grep tomcat 4、启动tomcat 服务 使用默认配置 docker ru…...

工业互联网系列1 - 智能制造中有哪些数据在传输

工业互联网以网络为基础&#xff0c;需要传输的数据种类多种多样&#xff0c;这些数据对于实时监控、生产优化、设备维护和决策支持等方面都至关重要。 以下是一些常见智能制造业中需要传输的数据类型&#xff1a; 传感器数据&#xff1a;制造设备上安装的传感器&#xff08;如…...

centos7部署Nginx和RabbitMQ

文章目录 Nginx安装部署【简单】简介安装 RabbitMQ安装部署【简单】简介安装 Nginx安装部署【简单】 简介 Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器&#xff0c;同时也提供了IMAP/POP3/SMTP服务。Nginx可以托管用户编写的WEB应用程序成为可访问的网页服务&am…...

Nacos集群搭建

Nacos集群搭建 1.集群结构图 Nacos集群图&#xff1a; 其中包含3个nacos节点&#xff0c;然后一个负载均衡器代理3个Nacos。这里负载均衡器可以使用nginx。 三个nacos节点的地址&#xff1a; 节点ipportnacos1192.168.150.18845nacos2192.168.150.18846nacos3192.168.150…...

运维小工具分享

1.windwos时间同步工具 通过NetTime软件同步 通过一个免费的同步时间软件来进行对时操作 软件官网链接&#xff1a;http://timesynctool.com/ 修改Windows主机时间&#xff0c;修改时间&#xff0c;时间差为10年、3年、4月份、24小时、2小时、1分钟&#xff1b;都可以及时与“…...

Eclipse插件安装版本不兼容问题解决方案——Papyrus插件为例

项目场景: Eclipse Papyrus安装后,没有新建Papyrus工程选项,也没有新建Papyrus Model的选项。 打开Papyrus Model会报错 问题描述 同样的,安装其他插件也是。可能某个插件之前安装是好用的,结果Eclipse的版本更新了,就再也安装不好用了 原因分析: 根本原因是因为包之…...

【Qt之QTimer】使用及技巧

简介 QTimer是Qt中的定时器类&#xff0c;用于执行定时操作&#xff0c;如在一段时间间隔后触发某个槽函数或执行特定的代码。它提供了灵活的定时功能&#xff0c;可以用于处理各种时间相关的任务。它是基于Qt的事件循环机制工作的。 主要函数说明 构造函数&#xff1a; QTim…...

零基础快速自学SQL,2天足矣。

此文是《10周入门数据分析》系列的第6篇。 想了解学习路线&#xff0c;可以先行阅读“ 学习计划 | 10周入门数据分析 ” 上一篇分享了数据库的基础知识&#xff0c;以及如何安装数据库&#xff0c;今天这篇分享数据库操作和SQL。 SQL全称是 Structured Query Language&#x…...

Meta开源数字水印Stable Signature,极大增强生成式AI安全

全球社交、科技巨头Meta&#xff08;Facebook、Instagram等母公司&#xff09;在官网宣布&#xff0c;开源数字水印产品Stable Signature&#xff0c;并公开论文。 据悉&#xff0c;Stable Signature是由Meta和INRIA&#xff08;法国国家信息与自动化研究所&#xff09;联合开…...

python实现分词器

在Python中实现分词有很多方法&#xff0c;具体取决于你的应用场景和数据。下面我会介绍一种常用的分词库——jieba。如果你的数据是英文&#xff0c;你也可以使用nltk库。 中文分词 使用jieba进行中文分词&#xff1a; 首先&#xff0c;你需要安装jieba库。如果还未安装&am…...

第五十二章 学习常用技能 - Global 映射

文章目录 第五十二章 学习常用技能定义数据库定义命名空间Global映射 第五十二章 学习常用技能 定义数据库 创建本地数据库&#xff1a; 登录管理门户。选择系统管理 > 配置 > 系统配置 > 本地数据库。选择创建新数据库以打开数据库向导。输入新数据库的以下信息&a…...

vue实现瀑布流

1、在 src 目录下创建 component文件夹&#xff0c;在文件夹中创建 vue文件。 2、在 Vue文件中写入以下内容 <div class"pubu"><div class"left"><div class"pubu-item" v-for"item in left" :key"item.id"…...

【虹科干货】Redis Enterprise 自动分层技术:大数据集高性能解决方案

越来越多的应用程序依赖于庞大的数据集合&#xff0c;而这些应用程序必须快速响应。借助自动分层&#xff0c;Redis Enterprise 7.2 帮助开发人员轻松创建超快的应用程序。何乐而不为&#xff1f; Redis将数据存储在内存中&#xff0c;因此应用程序能以最快的速度检索和处理数…...

代码随想录训练营二刷第五十四天 | 300.最长递增子序列 674. 最长连续递增序列 718. 最长重复子数组

代码随想录训练营二刷第五十四天 | 300.最长递增子序列 674. 最长连续递增序列 718. 最长重复子数组 一、300.最长递增子序列 题目链接&#xff1a;https://leetcode.cn/problems/longest-increasing-subsequence/ 思路&#xff1a;定义dp[i]表示从0到i的闭区间的最长子序列长…...

LeetCode 2562. 找出数组的串联值【数组,相向双指针】1259

本文属于「征服LeetCode」系列文章之一&#xff0c;这一系列正式开始于2021/08/12。由于LeetCode上部分题目有锁&#xff0c;本系列将至少持续到刷完所有无锁题之日为止&#xff1b;由于LeetCode还在不断地创建新题&#xff0c;本系列的终止日期可能是永远。在这一系列刷题文章…...

SpringBoot使用的时间与空间计量单位

SpringBoot支持JDK8提供的时间与空间计量单位 //时间单位DurationUnit(ChronoUnit.MINUTES)private Duration serverTimeOut;//存储空间单位DataSizeUnit(DataUnit.MEGABYTES)private DataSize dataSize; 在springboot中的具体使用&#xff1a; Component Data ConfigurationPr…...

【使用 TensorFlow 2】02/3 使用 Lambda 层创建自定义激活函数

一、说明 TensorFlow 2发布已经接近2年时间&#xff0c;不仅继承了Keras快速上手和易于使用的特性&#xff0c;同时还扩展了原有Keras所不支持的分布式训练的特性。3大设计原则&#xff1a;简化概念&#xff0c;海纳百川&#xff0c;构建生态.这是本系列的第三部分&#xff0c;…...

docker--使用docker login 报错解决方案

我们在本地使用 docker login 命令登录时报错&#xff0c;可以尝试一下先 docker logout 命令退出登录后&#xff0c;在使用 docker login命令进行登录操作&#xff1b; docker logout...

leetcode oj

150. 逆波兰表达式求值 - 力扣&#xff08;LeetCode&#xff09; 思路&#xff1a;定义一个名为 Solution 的类&#xff0c;并在其中定义了一个名为 evalRPN 的公共函数。这个函数接受一个由字符串组成的向量 tokens 作为输入&#xff0c;并返回一个整数。 在代码中&#xff0…...

黑马点评-05缓存穿透问题及其解决方案,缓存空字符串或使用布隆过滤器

缓存穿透问题(缓存空) 缓存穿透的解决方案 缓存穿透(数据穿透缓存直击数据库): 缓存穿透是指客户端请求访问缓存中和数据库中都不存在的数据,此时缓存永远不会生效并且用户的请求都会打到数据库 数据库能够承载的并发不如Redis这么高&#xff0c;如果大量的请求同时访问这种…...

Flink之窗口聚合算子

1.窗口聚合算子 在Flink中窗口聚合算子主要分类两类 滚动聚合算子(增量聚合)全窗口聚合算子(全量聚合) 1.1 滚动聚合算子 滚动聚合算子一次只处理一条数据,通过算子中的累加器对聚合结果进行更新,当窗口触发时再从累加器中取结果数据,一般使用算子如下: aggregatemaxmaxBy…...

K8S:Rancher管理 Kubernetes 集群

文章目录 一.Rancher 简介1.Rancher概念2.Rancher 和 k8s 的区别 二.Rancher 安装及配置1.安装 rancher2.登录 Rancher 平台3.Rancher 管理已存在的 k8s 集群4.Rancher 部署监控系统5.使用 Rancher 仪表盘管理 k8s 集群 三.拓展1.Rancher和kubesphere相比较2.K3S和K8S相比较 一…...

后台运行python程序并查看运行的python 进程

nohup python -u Job.py > log.log 2>&1 &说明&#xff1a; 末尾的“&”&#xff1a;表示后台运行程序 “nohup” &#xff1a;保证程序不被挂起 “python”&#xff1a;是执行python代码的命令 “-u”&#xff1a;表示不启用缓存&#xff0c;实时输出打印…...

树莓派部署.net core网站程序

1、发布你的项目 使用mobaxterm上传程序 回到mobaxterm,f进入目录输入&#xff1a; cd webpublish 运行程序&#xff1a;dotnet WebApplication1.dll 访问地址为&#xff1a;http://localhost:5000,尝访问如下&#xff1a; 已经出现 返回的json&#xff0c;证明是可以访问的…...

淘宝商品评论数据接口,淘宝商品评论API接口

淘宝商品评论数据接口可以通过淘宝开放平台API获取。 通过构建合理的请求URL&#xff0c;可以向淘宝服务器发起HTTP请求&#xff0c;获取商品评论数据。接口返回的数据一般为JSON格式&#xff0c;包含了商品的各种评价信息。获取到商品评论数据后&#xff0c;可以对其进行处理…...

455. 分发饼干

假设你是一位很棒的家长&#xff0c;想要给你的孩子们一些小饼干。但是&#xff0c;每个孩子最多只能给一块饼干。 对每个孩子 i&#xff0c;都有一个胃口值 g[i]&#xff0c;这是能让孩子们满足胃口的饼干的最小尺寸&#xff1b;并且每块饼干 j&#xff0c;都有一个尺寸 s[j] …...