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

JavaScript如何使用while循环

JavaScript 中的 while 循环是一种常用的循环结构,用于在满足一定条件时重复执行一段代码块。while 循环会先检查条件是否为真,如果为真,则执行循环体中的代码,然后再次检查条件。当条件变为假时,循环会结束。

while(条件判断){如果条件为true,则执行循环体代码}
while循环结构说明:在循环开始前,必须要对变量初始化(声明变量,给变量给个初始值)。如果while的条件为true,则会重复不断的执行循环体中({ })的代码。如果条件为false,则退出循环。在循环体中,必须要有“变量更新”的语句。换句话说:两次循环的变量的值不能一样,如果一样,会造成“死循环”。

下面是一个使用 while 循环的例子,用于输出从 1 到 10 的整数:

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

在这个例子中,我们使用了一个名为 i 的变量来表示当前循环的值。初始值为 1,每次循环时,i 的值会增加 1,直到它大于或等于 10。在循环体中,我们使用 console.log() 函数输出当前的 i 值,并将 i 的值增加 1。当 i 的值大于或等于 10 时,循环会结束。

除了上面的例子外,JavaScript 中的 while 循环还有其他的用法和特性。例如,可以使用 break 和 continue 关键字来控制循环的流程,也可以使用延迟执行等技术来控制循环的执行顺序。在使用 while 循环时,需要根据具体的场景和需求来选择合适的用法和技巧。

以下是一些使用 do…while 循环的例子:

计算 1 到 10 的和:

let sum = 0;  
do {  sum += 1;  
} while (sum <= 10);  
console.log(sum); // 输出 55

计算 0 到 9 的平方和:

let squares = [];  
do {  squares[squares.length - 1] = Math.pow(1 + (squares[squares.length - 1] + 1), 2);  
} while (squares.length < 10);  
console.log(squares); // 输出 [1, 4, 9, 16, 25, 36, 49, 64, 81]

计算斐波那契数列的第 n 项:

let fibonacci = [0, 1];  
do {  fibonacci[fibonacci.length - 1] = fibonacci[fibonacci.length - 2] + fibonacci[fibonacci.length - 1];  
} while (fibonacci.length < 10);  
console.log(fibonacci); // 输出 [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]

计算前缀和的最大值:

let max_sum = 0;  
let prefix = "";  
do {  let sum = 0;  for (let i = 0; i < 3; i++) {  sum += prefix.charAt(i) - 'a';  prefix += "a";  }  max_sum = Math.max(max_sum, sum);  
} while (prefix !== "");  
console.log(max_sum); // 输出 19937

总之,JavaScript 中的 while 循环是一种非常常用的循环结构,可以方便地实现一系列的重复操作或检查条件。学会正确地使用这个结构对于开发有用处哦!

相关文章:

JavaScript如何使用while循环

JavaScript 中的 while 循环是一种常用的循环结构&#xff0c;用于在满足一定条件时重复执行一段代码块。while 循环会先检查条件是否为真&#xff0c;如果为真&#xff0c;则执行循环体中的代码&#xff0c;然后再次检查条件。当条件变为假时&#xff0c;循环会结束。 while(…...

『MySQL 实战 45 讲』16 - “order by” 是怎么工作的

“order by” 是怎么工作的 首先创建一个表 CREATE TABLE t ( id int(11) NOT NULL, city varchar(16) NOT NULL, name varchar(16) NOT NULL, age int(11) NOT NULL, addr varchar(128) DEFAULT NULL, PRIMARY KEY (id), KEY city (city) ) ENGINEInnoDB;全字段排序 在 cit…...

怎么给移动硬盘查错?移动硬盘查错能恢复数据吗

移动硬盘在长期使用或使用不当的情况下&#xff0c;可能会出现硬盘文件损坏或者出现坏道等问题&#xff0c;影响数据安全和文件操作。这时候&#xff0c;移动硬盘查错工具就派上用场了。它可以帮助用户发现移动硬盘中的问题&#xff0c;并且还可以对移动硬盘进行修复。 但是&a…...

javaIO流之缓冲流

目录 简介1、字节缓冲流1.1构造方法1.2缓冲流的高效1.3为什么字节缓冲流会这么快&#xff1f;1.4byte & 0xFF 2、字符缓冲流2.1构造方法2.2字符缓冲流特有方法 3、练习 简介 Java 的缓冲流是对字节流和字符流的一种封装&#xff0c;通过在内存中开辟缓冲区来提高 I/O 操作…...

定义制造业操作(定义 MES/MOM 系统)

制造业操作包含众多工厂级活动&#xff0c;涉及设备&#xff08;定义、使用、时间表和维护&#xff09;、材料&#xff08;识别、属性、位置和状态&#xff09;、人员&#xff08;资格、可用性和时间表&#xff09;&#xff0c;以及这些资源与包含其信息碎片的众多系统之间的互…...

人工智能专栏第二讲——人工智能的基础技术

目录 一、机器学习 二、深度学习 三、自然语言处理 四、计算机视觉 五、总结 在第一讲中,我们介绍了人工智能的概念和发展趋势&#...

注意!ChatGPT的Plus账号也会被封禁

文 / 高扬&#xff08;微信公众号&#xff1a;量子论&#xff09; 最近经常看到有人丢个截图&#xff0c;然后悲伤地说&#xff0c;ChatGPT账号被封了。 这不是账号被封&#xff0c;而是所用的代理节点被OpenAI封了&#xff0c;换个节点即可。 这个截图才是账号真正被封的提示&…...

理解:Public Key Cryptography的应用

Applications Encryption with public key, decryption with private key Confidentiality or secrecy Encryption with private key, decryption with public key Integrity/authentication 一些概念特征的明确&#xff1a; public key&#xff1a;所有人都知道&#xff08;公…...

深度学习中的图像分类介绍

文章目录 深度学习中的图像分类介绍深度学习中的图像分类技术卷积神经网络 (Convolutional Neural Network, CNN)深度残差网络 (Deep Residual Network, ResNet)卷积神经网络的变种 图像分类的应用计算机视觉目标检测人脸识别自动驾驶图像搜索视频监控 医疗成像疾病分类病灶识别…...

自然语言处理基础

以下所有内容来自《自然语言处理 基于预训练模型的方法》 1. 文本的表示 利用计算机对自然语言进行处理&#xff0c;首先要解决语言在计算机内部的存储和计算问题。使用字符串表示计算文本的语义信息的时候&#xff0c;往往使用基于规则的方法。如&#xff1a;判断一个句子编…...

低代码与其拓荒,不如颠覆开发行业

目录 一、前言 二、低代码是一个值得信赖的“黑盒子” 粗略总结&#xff0c;开发者对低代码平台所见即所得设计器有两种反应&#xff1a; 三、人人都爱黑盒子 四、用“低代码平台”来开发是什么样的感受&#xff1f; 五、结论 一、前言 在科幻电影中&#xff0c;我们看到…...

【数据结构】散列表(哈希表)

文章目录 前言一、什么是散列表二、什么是哈希函数三、下面简单介绍几种哈希函数四、冲突处理散列冲突的方法开放定址法再散列函数法公共溢出区法链地址法 五、代码实现1.哈希函数2.链表和哈希表的创建3.哈希表初始化3.从哈希表中根据key查找元素4.哈希表插入元素5.元素删除6.哈…...

Flutter 笔记 | Flutter 核心原理(一)架构和生命周期

Flutter 架构 简单来讲&#xff0c;Flutter 从上到下可以分为三层&#xff1a;框架层、引擎层和嵌入层&#xff0c;下面我们分别介绍&#xff1a; 1. 框架层 Flutter Framework&#xff0c;即框架层。这是一个纯 Dart实现的 SDK&#xff0c;它实现了一套基础库&#xff0c;自…...

【Linux进阶之路】基本指令(下)

文章目录 一. 日志 date指令——查看日期基本语法1基本语法2cal指令——查看日历常见选项 二 .find——查找文件常用选项-name显示所有文件显示指定类型的文件 三.grep——行文本过滤工具语法常见的用法补充知识——APP与服务器的联系 四.打包压缩与解压解包zip与unzipzipunzip…...

Vue--》Vue 3 路由进阶——从基础到高级的完整指南

目录 Vue3中路由讲解与使用 路由的安装与使用 路由模式的使用 编程式路由导航 路由传参 嵌套路由 命名视图 重定向与别名 Vue3中路由讲解与使用 Vue 路由是 Vue.js 框架提供的一种机制&#xff0c;它用于管理网页上内容的导航。Vue 路由可以让我们在不刷新页面的情况下…...

【华为OD机试真题】【python】 网上商城优惠活动(一)【2022 Q4 | 100分】

华为OD机试- 题目列表 2023Q1 点这里!! 2023华为OD机试-刷题指南 点这里!! 题目描述 某网上商场举办优惠活动,发布了满减、打折、无门槛3种 优惠券,分别为: 1:每满100元优惠10元,无使用数限制,如100~199元可以使用1张减10元,200-299可使用2张减20元,以此类推; 2:…...

【业务数据分析】—— 用户留存分析(以挖掘Aha时刻为例)

目录 一、用户留存是什么 二、为什么要考虑用户留存 1、为什么要考虑用户留存&#xff1f; 2、影响用户留存的可能因素 3、用户留存的3个阶段 三、怎么进行用户留存分析(挖掘Aha时刻) 1、Aha时刻 2、Aha时刻的作用 3、挖掘Aha时刻 一、用户留存是什么 在互联网行业中&…...

极客的git常用命令手册

极客的git常用命令手册 1.1 权限配置篇1.1.1 创建ssh key1.1.2 本地存在多个密钥时&#xff0c;如何根据目标平台自动选择用于认证的密钥&#xff1f; 1.2 基础信息配置篇1.2.1 配置用户名1.2.2 配置用户邮箱1.2.3 设置文件名大小写区分1.2.4 设置命令行显示颜色1.2.5 检查git全…...

spring-data 一统江湖,玩转多种数据源

1、起因 因为要在项目中同时访问redis&#xff0c;mongo和mysql三种数据库&#xff0c;而且因为偏向spring-data&#xff0c;所以都使用了spring-data 在使用的过程中如果不做配置发现会有冲突&#xff0c;这篇文章也是解决这个问题&#xff0c;避免以后遇到同样的问题不知所…...

【EMC专题】为什么PCB上的单端阻抗控制在50欧?

每当我们在发板后和PCB板厂沟通说有些走线需要阻抗控制,控制在多少多少。其实我们所说的阻抗是传输线的特性阻抗。特性阻抗是不能用万用表测量出来的,他由传输线的结构以及材料决定,与传输线的长度、信号的幅度、频率等均无关。 特性阻抗的概念 当电磁波在电缆上…...

FISCO BCOS节点扩容实战指南:从原理到操作全解析

引言:为什么需要节点扩容? 在区块链网络运营过程中,“如何在不中断服务的情况下扩展网络处理能力?”“能否实现节点的平滑扩容与缩容?”“怎样确保新节点快速同步数据?”——这些问题困扰着许多区块链运维人员。FISCO BCOS作为金融级联盟链平台,提供了完善的节点扩容机…...

2026年三角洲俱乐部3×3保险箱:守护私密空间的智能选择

在《三角洲行动》这款充满策略与竞技的游戏中&#xff0c;无论是珍贵的“暗星燃料”、“勇者之证”&#xff0c;还是辛苦积累的“哈夫币”&#xff0c;都是玩家心血的结晶。如何安全、便捷地管理这些虚拟资产&#xff0c;成为许多玩家&#xff0c;尤其是高端玩家和团队管理者关…...

好用有省钱的电脑多开神奇工具

今天&#xff0c;我们要介绍的是一款专为电脑用户设计的神奇软件——Safeboxie多开器。这款软件打破了传统限制&#xff0c;无论是游戏还是其他应用程序&#xff0c;都能轻松实现多开。你是否曾为在电脑上无法同时运行多个游戏或软件而烦恼&#xff1f;Safeboxie多开器将完美解…...

贾子科学三层结构定律(TMM):终结波普尔骗局,重塑科学真理主权的终极架构

贾子科学三层结构定律&#xff08;TMM&#xff09;&#xff1a;终结波普尔骗局&#xff0c;重塑科学真理主权的终极架构副标题&#xff1a; Truth–Model–Method Framework——从“方法僭越”到“真理回归”的科学划界革命摘要针对波普尔可证伪主义导致的真理虚无化与当代学术…...

如何高效定制暗黑破坏神2角色?全能d2s存档编辑器使用指南

如何高效定制暗黑破坏神2角色&#xff1f;全能d2s存档编辑器使用指南 【免费下载链接】d2s-editor 项目地址: https://gitcode.com/gh_mirrors/d2/d2s-editor 在暗黑破坏神2的冒险旅程中&#xff0c;你是否曾因属性点分配失误、稀有装备获取困难或存档损坏而感到沮丧&a…...

Spire实现Wod与Pdf相互转换

在 Java 中使用 Spire 库进行 Word 和 PDF 的转换&#xff0c;你需要用到两个不同的库&#xff1a;Word 转 PDF&#xff1a;使用 Spire.Doc for Java (免费版)PDF 转 Word&#xff1a;使用 Spire.PDF for Java (免费版)重要提示&#xff1a; 免费版&#xff08;Free Spire&…...

Phi-3-mini-4k-instruct-gguf快速上手:VS Code远程开发+Jupyter Notebook联调

Phi-3-mini-4k-instruct-gguf快速上手&#xff1a;VS Code远程开发Jupyter Notebook联调 1. 环境准备与快速部署 Phi-3-mini-4k-instruct-gguf是微软推出的轻量级文本生成模型&#xff0c;特别适合问答、文本改写、摘要整理等场景。本文将带你快速搭建开发环境&#xff0c;实…...

Java原生镜像内存优化实战手册(含AOT编译期内存剖分图谱):从386MB→47MB的7次关键裁剪记录

第一章&#xff1a;Java原生镜像内存优化全景图谱Java 原生镜像&#xff08;Native Image&#xff09;通过 GraalVM 的 AOT&#xff08;Ahead-of-Time&#xff09;编译技术&#xff0c;将 Java 字节码直接编译为平台原生可执行文件&#xff0c;在启动速度、内存占用和资源效率方…...

从田间到大屏只要1.8秒:PHP异步任务队列+Redis流式渲染农业可视化看板(实测QPS 1270+)

第一章&#xff1a;从田间到大屏只要1.8秒&#xff1a;PHP异步任务队列Redis流式渲染农业可视化看板&#xff08;实测QPS 1270&#xff09;在智慧农业场景中&#xff0c;传感器集群每秒上报数千条温湿度、土壤EC值、光照强度等时序数据&#xff0c;传统同步渲染方式导致看板平均…...

Windows系统下FFmpeg的安装与环境配置指南

前言 FFmpeg作为开源多媒体处理领域的标杆工具&#xff0c;其安装配置是音视频开发的基础环节。 一、安装流程详解 1、下载预编译版本 通过FFmpeg官方下载页面获取Windows版本&#xff0c;推荐选择&#xff1a; Gyan/BtbN构建版本&#xff1a;包含完整编解码器支持 static…...