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

JavaScript 条件循环语句

条件循环语句‌是编程中的一种控制结构,它允许程序根据特定条件重复执行一段代码,直到满足某个条件为止。这种结构通常包括条件语句和循环语句,它们共同作用,使得程序能够根据预设的条件来决定是否继续执行循环体中的代码。

for 循环:

  • 适用场景:当知道循环次数时(循环次数已知)。
  • 特点:可在一行中定义初始化、条件和增量,结构紧凑。
运算符描述
初始化变量通常用于初始化一个计数器,该表达式可以使用 var 或者 let 关键字声明新的变量,这个变量帮我们来记录次数。推荐使用 let.
条件表达式用于确定每一次循环是否能被执行,如果结果是 true 就继续循环,否则退出循环。
操作表达式每次循环的最后都要执行的表达式。通常用于更新计数器变量的值。

               语法:
for循环语法for(初始化变量①;  条件表达式②;  操作表达式③  ){
// 循环体④
}
示例:
for (let i = 1; i <= 5; i++) {console.log("这是第 " + i + " 次循环");
}
执行流程:
  1. 初始化变量,初始化操作在整个 for 循环只会执行一次。
  2. 继续执行操作表达式,第二轮结束。......
  3. 第二轮开始,直接去执行条件表达式(不再初始化变量),如果为 true,则去执行循环体语句,否则退出循环。
  4. 执行操作表达式,此时第一轮结束。
  5. 执行条件表达式,如果为 true,则执行循环体语句,否则退出循环,循环结束。

整体执行顺序为:① ② ④ ③ ② ④ ③ ② ④ ③ ...... ② 循环结束

for 循环嵌套for 循环:

for  (外循环的初始①;  外循环的条件②;  外循环的操作表达式③)  {
for  (内循环的初始④;  内循环的条件⑤;  内循环的操作表达式⑥)  {
// 需执行的代码⑦;
}
}

整体执行顺序为:① ② ④ ⑤ ⑦ ⑥ ⑤ ⑦ ⑥ ⑤ ...... ⑤ 内循环结束 ③ ② ④ ⑤

⑦ ⑥ ⑤ ⑦ ⑥ ⑤ ...... ⑤ 内循环结束 ③ ...... ② 外循环结束。

2. while 循环

while 循环在条件为真时重复执行代码。适合于不确定循环次数的情况。与for循环不同,while循环的条件是在每次迭代中指定的。只要条件为真,循环就会继续执行。一旦条件为假,循环就会立即停止。

  • 特点:先检查条件,条件为真时执行循环体,适合需要动态判断的情况。
  • 适用场景:当不确定循环次数时,需基于条件进行判断。
      语法:
while  (条件表达式)  {
// 循环体代码
}
//  1.  先执行条件表达式,如果结果为  true,则执行循环体代码;
//	如果为  false,则退出循环,执行后面代码
//  2.  执行循环体代码
//  3.  循环体代码执行完毕后,程序会继续判断执行条件表达式。
示例:
let count = 1;while (count <= 5) {console.log("这是第 " + count + " 次循环");count++; // 增加计数
}

3. do...while 循环

do...while 循环至少会执行一次循环体,因为条件检查是在循环之后进行的。do while 是先执行代码,在进行判断,所以 do while 至少执行一次。

  • 特点:先执行循环体,然后检查条件,确保至少执行一次。
  • 适用场景:至少需要执行一次循环体的情况。
语法:
do {
//  循环体代码  -  条件表达式为  true  时重复执行循环体代码
}  while(条件表达式);
示例:
let count = 1;do {console.log("这是第 " + count + " 次循环");count++;
} while (count <= 5);

4.练习题

练习题1.九九乘法口诀

练习题2. 一百以内的加法

练习题3.一百以内偶数加法 

5.答案

练习题1答案 

  // for循环实现九九乘法口诀for (let i = 1; i <= 9; i++) {for (let j = 1; j <= i; j++) {document.write(j + 'x' + i + '=' + i * j + '  ');}document.write('<br/>');}// while实现九九乘法口诀let i = 1;let j = 1;while (i <= 9) {j = 1;while (j <= i) {document.write(j + '*' + i + '=' + i * j + '  ');j++;}document.write('<br/>'); // 换行i++;}// do while实现九九乘法口诀let u = 1;let g = 1;do {g = 1;while (g <= u) {document.write(u + "x" + g + "=" + u * g + "  ");g++;}document.write('<br/>'); // 换行u++;} while (u <= 9);

练习题2答案 

	// for循环实现一百以内的加法let sum = 0for (let i = 1; i <= 100; i++) {sum += i;}document.write(sum);// while循环实现一百以内的加法let l = 1;let q = 0;while (l <= 100) {q += l;l++;}console.log(q);// do while循环实现一百以内的加法let y = 1;let x = 0;do {x += y;y++;}while (y <= 100);console.log(x);

练习题3答案 

	// for循环实现一百以内偶数加法let add = 0;for (let z = 1; z <= 100; z++) {if (z % 2 == 0) {add += z;}}document.write(add);document.write('<br/>');// while循环实现一百以内偶数加法let s = 1;let and = 0;while (s <= 100) {if (s % 2 == 0) {and += s;}s++;}console.log(and);// do while循环实现一百以内偶数加法let n = 1;let m = 0;do {if (n % 2 == 0) {m += n;}n++;} while (n <= 100);console.log(m);

总结:

  • 循环语句:用于重复执行代码块(forwhiledo...while)。
  • 希望这篇文章能帮助你理解 JavaScript 的条件与循环语句!

相关文章:

JavaScript 条件循环语句

‌条件循环语句‌是编程中的一种控制结构&#xff0c;它允许程序根据特定条件重复执行一段代码&#xff0c;直到满足某个条件为止。这种结构通常包括条件语句和循环语句&#xff0c;它们共同作用&#xff0c;使得程序能够根据预设的条件来决定是否继续执行循环体中的代码。 fo…...

LeetCode2207解题思路

题目描述 字符串中最多数目的子序列 解题思路&#xff1a; 题目要求我们找到在 text 中 找到最多可组成 pattern 的字符串个数&#xff0c;并且允许在 text 的任意位置插入 pattern 中一个字符&#xff0c;也就是说我们只需要考虑 text 中的 pattern 含有的字符即可。例如示例…...

opencv图像增强十四:opencv两种白平衡介绍及实现

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、白平衡介绍二、灰度世界法三、完美反射法 前言 在摄影与影像领域&#xff0c;白平衡是一个至关重要的概念。它直接影响着画面的色彩表现&#xff0c;关系到…...

Linux标准IO(四)-格式化I/O输入

C 库函数提供了 3 个格式化输入函数&#xff0c;包括&#xff1a;scanf()、fscanf()、sscanf()&#xff0c;其函数定义如下所示&#xff1a; #include <stdio.h> int scanf(const char *format, ...); int fscanf(FILE *stream, const char *format, ...); int sscanf(c…...

分布式安装LNMP

目录 搭建LNMP架构 安装mysql 1.上传mysql软件包&#xff0c;关闭防火墙和核心防护 2.安装环境依赖包&#xff0c;桌面安装可能有自带的数据库除 3.配置软件模块 4.编译及安装 5.创建mysql用户 6.修改mysql 配置文件 7.更改mysql安装目录和配置文件的属主属组 8.设置…...

TFTP协议

目录 一、TFTP协议概述 1.1 TFTP协议简介 1.2 TFTP协议特点 二、TFTP协议原理 2.1 TFTP协议工作流程 2.2 TFTP协议数据包格式 三、TFTP协议应用场景 3.1 网络设备配置文件传输 3.2 虚拟机镜像文件传输 3.3 IoT设备固件升级 四、TFTP协议优化方法 4.1 增加超时重传机…...

FPGA随记-二进制转格雷码

反射二进制码&#xff08;RBC&#xff09;&#xff0c;也称为反射二进制&#xff08;RB&#xff09;或格雷码&#xff08;Gray code&#xff09;&#xff0c;得名于Frank Gray&#xff0c;是二进制数制的一种排列方式&#xff0c;使得连续两个值之间仅有一个比特&#xff08;二…...

Android常用C++特性之std::unique_lock

声明&#xff1a;本文内容生成自ChatGPT&#xff0c;目的是为方便大家了解学习作为引用到作者的其他文章中。 std::unique_lock 是 C 标准库中的一种灵活的锁管理类&#xff0c;提供了比 std::lock_guard 更多的功能和灵活性。它可以控制对互斥锁&#xff08;std::mutex&#x…...

网络与信息安全工程师(工信部教育与考试中心)

在当今数字化时代&#xff0c;大量的敏感信息与业务流程在网络上传输和处理&#xff0c;使得网络与信息安全成为保障企业运营、政务管理以及金融交易等关键领域不可忽视的一环。 因此&#xff0c;对网络安全专家的需求日益增长。 例如&#xff0c;金融机构、大型电信运营商以…...

uni-app+vue3开发微信小程序使用本地图片渲染不出来报错[渲染层网络层错误]Failed to load local image resource

我把图片放在assets里面页面通过相对路径引入。结果一直报错。 最后我把图片放在static文件夹下面。然后修改路径指向static就可以了 或者是我们必须先import 这个图片然后在使用 import banner1 from ../../assets/images/banner/banner1.png; <image :src"banner…...

Leetcode 93-复原 IP 地址

有效 IP 地址 正好由四个整数&#xff08;每个整数位于 0 到 255 之间组成&#xff0c;且不能含有前导 0&#xff09;&#xff0c;整数之间用 ‘.’ 分隔。 例如&#xff1a;“0.1.2.201” 和 “192.168.1.1” 是 有效 IP 地址&#xff0c;但是 “0.011.255.245”、“192.168.…...

unity 中向指定的动画片段添加动画事件,并播放动画,同时获取动画片段的时长。

示例一 using UnityEngine;using System;public static class AnimationUtils{/// <summary>/// 向指定的动画片段添加动画事件&#xff0c;并播放动画&#xff0c;同时获取动画片段的时长。/// </summary>/// <param name"_animator">需要添加动画…...

JavaEE:探索网络世界的魅力——玩转UDP编程

文章目录 UDPUDP的特点UDP协议端格式校验和前置知识校验和具体是如何工作的? UDP UDP的特点 UDP传输的过程类似于寄信. 无连接: 知道对端的IP和端口号就直接进行传输,不需要建立连接.不可靠: 没有确认机制,没有重传机制,如果因为网络故障导致该段无法到达对方,UDP协议也不会…...

生成式人工智能:企业数字化转型的全新引擎,深度解析The Open Group 2024生态系统架构·可持续发展年度大会

生成式人工智能&#xff1a;企业数字化转型的全新引擎&#xff0c;深度解析The Open Group 2024生态系统架构可持续发展年度大会 随着人工智能技术的飞速发展&#xff0c;生成式人工智能&#xff08;Generative AI&#xff09;正以惊人的速度渗透到各行各业&#xff0c;成为企…...

阿里云k8s如何创建可用的api token

阿里云的 Kubernetes 配置文件&#xff08;如您所提供的 YAML 格式文件&#xff09;通常不会直接包含用于连接 Kubernetes 集群的令牌。而是包含了客户端证书和私钥数据&#xff0c;这些是用于通过证书验证而不是令牌验证的方式来与 Kubernetes API 服务器进行安全交互的。 1.…...

leetcode刷题day30|贪心算法Part04重叠区间问题(452. 用最少数量的箭引爆气球、435. 无重叠区间、763.划分字母区间)

前言&#xff1a;今天的三道题目都是重叠区间的问题。 452. 用最少数量的箭引爆气球 思路&#xff1a;局部最优&#xff1a;当气球出现重叠&#xff0c;一起射&#xff0c;所用弓箭最少&#xff1b; 全局最优&#xff1a;把所有气球射爆所用弓箭最少。 按照起始位置排序&…...

MQTT客户端实战:从连接到通信。详细说明MQTT客户端和MQTT代理进行通信

EMQX安装 EMQX服务器安装 安装文档&#xff0c;见链接不另外写 https://docs.emqx.com/zh/emqx/latest/deploy/install-ubuntu.html 启动 EMQX 启动为一个 systemd 服务&#xff1a; sudo systemctl start emqx在windows安装客户端 在线 MQTT WebSocket 客户端工具&…...

【go/方法记录】cgo静态库编译以及使用dlv定位cgo崩溃问题

目录 说在前面文件树静态库编译cgo使用崩溃模拟使用dlv定位崩溃参考 说在前面 测试环境&#xff1a;WSL2go版本&#xff1a;go version go1.23.1 linux/amd64gcc版本&#xff1a;gcc (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0cmake版本&#xff1a;3.22.1 文件树 ├── buffer …...

(笔记自用)位运算总结+LeetCode例题:颠倒二进制位+位1的个数

一.位运算总结: 在解题之前理解一下为什么需要位运算&#xff1f;它的本质是什么&#xff1f; 力扣上不少位运算相关的题&#xff0c;并且很多题也会用到位运算的技巧。这又是为什么&#xff1f; 位运算的由来 在计算机里面&#xff0c;任何数据最终都是用数字来表示的&…...

024.PL-SQL进阶—游标

课 程 推 荐我 的 个 人 主 页&#xff1a;&#x1f449;&#x1f449; 失心疯的个人主页 &#x1f448;&#x1f448;入 门 教 程 推 荐 &#xff1a;&#x1f449;&#x1f449; Python零基础入门教程合集 &#x1f448;&#x1f448;虚 拟 环 境 搭 建 &#xff1a;&#x1…...

eNSP-Cloud(实现本地电脑与eNSP内设备之间通信)

说明&#xff1a; 想象一下&#xff0c;你正在用eNSP搭建一个虚拟的网络世界&#xff0c;里面有虚拟的路由器、交换机、电脑&#xff08;PC&#xff09;等等。这些设备都在你的电脑里面“运行”&#xff0c;它们之间可以互相通信&#xff0c;就像一个封闭的小王国。 但是&#…...

Ubuntu系统下交叉编译openssl

一、参考资料 OpenSSL&&libcurl库的交叉编译 - hesetone - 博客园 二、准备工作 1. 编译环境 宿主机&#xff1a;Ubuntu 20.04.6 LTSHost&#xff1a;ARM32位交叉编译器&#xff1a;arm-linux-gnueabihf-gcc-11.1.0 2. 设置交叉编译工具链 在交叉编译之前&#x…...

企业如何增强终端安全?

在数字化转型加速的今天&#xff0c;企业的业务运行越来越依赖于终端设备。从员工的笔记本电脑、智能手机&#xff0c;到工厂里的物联网设备、智能传感器&#xff0c;这些终端构成了企业与外部世界连接的 “神经末梢”。然而&#xff0c;随着远程办公的常态化和设备接入的爆炸式…...

CSS设置元素的宽度根据其内容自动调整

width: fit-content 是 CSS 中的一个属性值&#xff0c;用于设置元素的宽度根据其内容自动调整&#xff0c;确保宽度刚好容纳内容而不会超出。 效果对比 默认情况&#xff08;width: auto&#xff09;&#xff1a; 块级元素&#xff08;如 <div>&#xff09;会占满父容器…...

论文笔记——相干体技术在裂缝预测中的应用研究

目录 相关地震知识补充地震数据的认识地震几何属性 相干体算法定义基本原理第一代相干体技术&#xff1a;基于互相关的相干体技术&#xff08;Correlation&#xff09;第二代相干体技术&#xff1a;基于相似的相干体技术&#xff08;Semblance&#xff09;基于多道相似的相干体…...

Kafka入门-生产者

生产者 生产者发送流程&#xff1a; 延迟时间为0ms时&#xff0c;也就意味着每当有数据就会直接发送 异步发送API 异步发送和同步发送的不同在于&#xff1a;异步发送不需要等待结果&#xff0c;同步发送必须等待结果才能进行下一步发送。 普通异步发送 首先导入所需的k…...

LabVIEW双光子成像系统技术

双光子成像技术的核心特性 双光子成像通过双低能量光子协同激发机制&#xff0c;展现出显著的技术优势&#xff1a; 深层组织穿透能力&#xff1a;适用于活体组织深度成像 高分辨率观测性能&#xff1a;满足微观结构的精细研究需求 低光毒性特点&#xff1a;减少对样本的损伤…...

Python网页自动化Selenium中文文档

1. 安装 1.1. 安装 Selenium Python bindings 提供了一个简单的API&#xff0c;让你使用Selenium WebDriver来编写功能/校验测试。 通过Selenium Python的API&#xff0c;你可以非常直观的使用Selenium WebDriver的所有功能。 Selenium Python bindings 使用非常简洁方便的A…...

Neko虚拟浏览器远程协作方案:Docker+内网穿透技术部署实践

前言&#xff1a;本文将向开发者介绍一款创新性协作工具——Neko虚拟浏览器。在数字化协作场景中&#xff0c;跨地域的团队常需面对实时共享屏幕、协同编辑文档等需求。通过本指南&#xff0c;你将掌握在Ubuntu系统中使用容器化技术部署该工具的具体方案&#xff0c;并结合内网…...

AxureRP-Pro-Beta-Setup_114413.exe (6.0.0.2887)

Name&#xff1a;3ddown Serial&#xff1a;FiCGEezgdGoYILo8U/2MFyCWj0jZoJc/sziRRj2/ENvtEq7w1RH97k5MWctqVHA 注册用户名&#xff1a;Axure 序列号&#xff1a;8t3Yk/zu4cX601/seX6wBZgYRVj/lkC2PICCdO4sFKCCLx8mcCnccoylVb40lP...