用 JavaScript 循环快速解决问题——WEB开发系列48

ops/2024/10/18 12:19:31/

循环结构是用来处理重复性任务的工具。无论是基本的计算还是复杂的数据处理,循环结构都能够高效地完成这些任务。在JavaScript中,最常用的循环结构包括​​​​for​​​​​循环、​​​​while​​​​​语句和​​​​do...while​​​语句,每种循环结构都有其独特的语法和用途。


什么是循环

循环是一种控制结构,用于重复执行一段代码块,直到满足特定条件为止。有了这种特性可以避免手动编写多次相同的代码,提高工作效率和可读性。

想象一下,如果你需要对一个数组中的每个元素进行操作,比如求和、排序或者过滤。如果没有循环,可能会不得不逐一写出每个操作,这不仅繁琐,而且容易出错。通过使用循环,可以用简洁的代码来实现这些操作,让程序更加优雅且易于维护。


循环的标准

一个标准的循环通常包括以下几个部分:

  1. 初始化器:一个设置为一个数字的变量,它被递增来计算循环运行的次数。这通常被称为计数变量。
  2. 退出条件:定义循环何时停止的条件。这通常是一个比较运算符的表达式,用于检查退出条件是否已满足。
  3. 最终条件:每次迭代后都会执行的代码块,通常用于增加(或在某些情况下递减)计数器变量,使其更接近退出条件值。
  4. 代码块:每次循环迭代时都会运行的代码。

for 循环

​for​循环是最常用的循环结构之一。它的语法如下:

for (初始化器; 退出条件; 最终条件) {// 代码块
}

示例

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

例子中初始化了一个计数变量​​i​​,并设置退出条件为​​i < 10​​。每次迭代后,增加​​i​​的值,直到​​i​​达到10为止。在每次迭代中,都会执行​​console.log(i)​​​,打印当前的计数值。


使用 break 退出循环

有时,可能需要在满足某些条件时提前退出循环。​​break​​语句就是用来实现这一功能的。它可以立即终止当前的循环,并继续执行循环之后的代码。

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

当​​i​​等于5时,使用​​break​​语句提前终止循环。因此只会打印出0到4的数字,而不会打印5到9。


使用 continue 跳过迭代

如果你希望在某些条件下跳过当前的迭代,但继续执行下一次迭代。​​continue​​语句就是用来实现这一功能的。它可以立即跳过当前的迭代,并开始执行下一次迭代。

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

当​​i​​是偶数时,使用​​continue​​语句跳过当前的迭代。只会打印出所有奇数,而不会打印任何偶数。


while 语句

​while​​语句类似于​​for​循环,但它没有初始化器和最终条件。它只有一个退出条件,只要退出条件为真,循环就会继续执行。

let i = 0;
while (i < 10) {console.log(i);i++;
}

首先初始化了一个计数变量​​i​​,并设置退出条件为​​i < 10​​。每次迭代后,增加​​i​​的值,直到​​i​​达到10为止。每次迭代中,都会执行​​console.log(i)​​​,打印当前的计数值。


do...while 语句

​do...while​​语句与​​while​​语句类似,但它确保循环至少执行一次。它有一个退出条件,只要退出条件为真,循环就会继续执行。

let i = 0;
do {console.log(i);i++;
} while (i < 10);

先初始化了一个计数变量​​i​​,并设置退出条件为​​i < 10​​。每次迭代中,会执行​​console.log(i)​​,打印当前的计数值。然后增加​​i​​的值,直到​​i​​​达到10为止。


应该使用哪种循环类型?

选择哪种循环类型取决于具体的需求和场景。

  1. 已知迭代次数:如果知道循环需要运行的次数,使用​​for​循环是最合适的选择。例如:
for (let i = 0; i < 10; i++) {console.log(i);
}
  1. 不确定迭代次数:如果不确定循环需要运行的次数,通常使用​​while​​语句或​​do...while​​语句。例如:
let i = 0;
while (i < 10) {console.log(i);i++;
}
  1. 至少运行一次:如果需要确保循环至少运行一次,使用​​do...while​​​语句是最合适的选择。例如:
let i = 0;
do {console.log(i);i++;
} while (i < 10);

代码实例

实例一:打印1到10的数字
for (let i = 1; i <= 10; i++) {console.log(i);
}

使用​​for​循环来打印1到10的数字。初始化器​​let i = 1​​设置计数变量​​i​​的初始值为1。退出条件​​i <= 10​定义循环的结束条件为​​i​​大于10。最终条件​​i++​​每次迭代后增加​​i​的值。每次迭代都会执行​​console.log(i)​​,打印当前的计数值。

实例二:计算1到100的偶数和
let sum = 0;
for (let i = 1; i <= 100; i++) {if (i % 2 === 0) {sum += i;}
}
console.log("1到100的偶数和为:" + sum);

使用​​for​循环来计算1到100的偶数和。初始化器​​let i = 1​设置计数变量​​i​​的初始值为1。退出条件​​i <= 100​定义循环的结束条件为​​i​​大于100。最终条件​​i++​​每次迭代后增加​​i​的值。每次迭代中使用条件语句​​if (i % 2 === 0)​来检查当前的数字是否是偶数。如果是偶数,将其加到变量​​sum​​中。最终,我们打印出1到100的偶数和。


http://www.ppmy.cn/ops/126473.html

相关文章

Odoo:免费开源的装备制造行业信息化解决方案

概述 满足装备制造行业MTO、ETO、MTS等多种业务模式&#xff0c;从个性化的订单选配、多层级计划管理模式、复杂的物料齐套规划、频繁的设计变更管理、精细化制造执行和用料管控、精准的售后服务等行业特性&#xff0c;提供一站式整体解决方案。 行业趋势洞察 个性化定制 洞察…

【Iceberg分析】Iceberg 1.6.1 源码使用IDEA本地编译

Iceberg 1.6.1 源码使用IDEA本地编译 文章目录 Iceberg 1.6.1 源码使用IDEA本地编译下载文件配置调整gradle相关修改bulid.gradlegradle.properties在IDEA上构建编译打包 可能出现的问题彩蛋与Spark部署Spark与Iceberg集成部署 下载 网络条件允许的情况下&#xff0c;使用git直…

智慧船舶物联网实训室建设方案

第一章 建设背景 随着全球海洋经济的蓬勃发展与智能化技术的日新月异&#xff0c;数字船舶物联网&#xff08;Internet of Things for Maritime, IoT-Maritime&#xff09;与人工智能&#xff08;Artificial Intelligence, AI&#xff09;的结合已成为推动航运业转型升级的关键…

浏览器缓存

问题 每次发布 web 项目新的版本后&#xff0c; 在浏览器中打开项目时&#xff0c; 不清除浏览器缓存&#xff0c; 无法获取最新页面。 原因 为了减少资源请求次数&#xff0c;加快资源访问速度&#xff0c; 浏览器会对资源文件如图片 、css 文件、 js 文件等进行缓存&#xff…

《深度学习》Dlib、OpenCV 关键点定位 原理及案例解析

目录 一、关键点定位 1、什么是关键点定位 2、步骤 1&#xff09;加载预训练的人脸检测器 2&#xff09;加载预训练的关键点检测器 3&#xff09;读取图像 4&#xff09;检测人脸 5&#xff09;关键点检测 6&#xff09;可视化关键点 7&#xff09;显示图像 二、案例…

关于武汉芯景科技有限公司的限流开关芯片XJ6288开发指南(兼容SY6288)

一、芯片引脚介绍 1.芯片引脚 二、系统结构图 三、功能描述 1.EN引脚控制IN和OUT引脚的通断 2.OCB引脚指示状态 3.过流自动断开

【解决】webstrom uniapp rpx格式化空格 报错飘红

解决办法 1、安装 wechat mini program support 插件 2. 设置 wechat mini program 里小程序支持选为启用 3. 重新格式化显示正常&#xff0c;也不飘红了 注意要style开启scss支持lang"scss"&#xff0c;否则也会飘红报错 <style lang"scss"><…

使用Python在Jupyter Notebook中显示Markdown文本

使用Python在Jupyter Notebook中显示Markdown文本 引言1. 导入必要的模块2. 定义一个函数来显示Markdown文本3. 使用print_md函数显示Markdown文本4. 总结 引言 作为一名Python初级程序员&#xff0c;你可能已经熟悉了Jupyter Notebook这个强大的工具。Jupyter Notebook不仅支…