JavaScript -- 三种循环语句的介绍及示例代码

news2024/11/27 10:26:51

文章目录

  • 循环语句
    • 1 While循环
    • 2 do-while循环
    • 3 for循环
    • 4 嵌套循环

循环语句

通过循环语句可以使指定的代码反复执行

JS中一共有三种循环语句

  • while语句
  • do-while语句
  • for语句

通常编写一个循环,要有三个要件

  1. 初始化表达式(初始化变量)
  2. 条件表达式(设置循环运行的条件)
  3. 更新表单式(修改初始化变量)

1 While循环

  • 语法:

    while(条件表达式){
    	语句...
    }
    
  • 执行流程:

    • while语句在执行时,会先对条件表达式进行判断,
      • 如果结果为true,则执行循环体,执行完毕,继续判断
      • 如果为true,则再次执行循环体,执行完毕,继续判断,如此重复
      • 知道条件表达式结果为false时,循环结束

死循环:当一个循环的条件表达式恒为true时,这个循环就是一个死循环,会一直执行(慎用)

let i = 0		// 初始化表达式
while(i < 5){		// 条件表达式
    console.log(i)
    i++			// 更新表达式
}

// 上面的循环等价于:
let i = 0
while(1){
    console.log(i)
    i++

    if(i >= 5){
        break
    }
}

练习:假设银行存款的年利率为5%,问1000块存多少年可以变成5000块

// 创建一个变量表示钱数
let money = 1000

// 创建一个计数器来记录循环执行的次数
let year = 0

// 编写循环,计算存款的年数
while(money < 5000){
    money *= 1.05 // 循环没执行一次,就相当于钱存了一年
    year++
}

console.log(`需要存${year}年,最终的钱数为${money}元!`)

2 do-while循环

  • 语法

    do{
        语句...
    }while(条件表达式)
    
  • 执行顺序:

    • do-while语句在执行时,会先执行do后的循环体,执行完毕后,会对while后的条件表达式进行判断
      • 如果为false,则循环终止
      • 如果为true,则继续执行循环体,以此类推
  • 和while的区别:

    • while语句是先判断再执行
    • do-while语句是先执行再判断
    • 实质的区别:
      • do-while语句可以确保循环至少执行一次
let i = 10
do{
    console.log(i)
    i++
}while(i < 5)
    
// 等价以下while循环
let i = 10
while(i < 5){
    console.log(i)
    i++
}

3 for循环

for循环和while没有本质区别,都是用来反复执行代码

不同点就是语法结构,for循环更加清晰

  • 语法:

    for(①初始化表达式; ②条件表达式; ④更新表达式){
    	③语句...
    }
    
  • 执行流程:
    ① 执行初始化表达式,初始化变量
    ② 执行条件表达式,判断循环是否执行(true执行,false终止)
    ③ 判断结果为true,则执行循环体
    ④ 执行更新表达式,对初始化变量进行修改
    ⑤ 重复②,直到判断为false为止

  • 初始化表达式,在循环的整个的生命周期中只会执行1次

  • for循环中的三个表达式都可以省略

    • 使用let在for循环的()中声明的变量是局部变量,只能在for循环内部访问
    • 使用var在for循环的()中声明的变量可以在for循环的外部访问
  • 创建死循环的方式:

    • while(1){}
    • for(;;){}
for(let i=0; i<5; i++){
    console.log(i)
}

4 嵌套循环

在循环中也可以嵌套其他的循环

示例一:

for (let i = 0; i < 5; i++) {
    for (let j = 0; j < 5 - i; j++) {
        document.write("*&nbsp;&nbsp;")
    }

    document.write("<br>")
}

image-20221130185853455

示例二:

for (let i = 0; i < 5; i++) {
    for (let j = 0; j < i + 1; j++) {
        document.write("*&nbsp;&nbsp;")
    }

    document.write("<br>")
}

image-20221130185906370

示例三:

for (let i = 0; i < 5; i++) {
    // 创建一个内层循环来控制图形的宽度
    for (let j = 0; j < 5; j++) {
        document.write("*&nbsp;&nbsp;")
    }

    document.write("<br>")
}

image-20221130185940203

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/51691.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

风云气象卫星系列介绍

风云气象卫星系列是中国于1977年开始研制的气象卫星系列&#xff0c;目前发射了风云一号、风云二号、风云三号、风云四号等卫星。 风云一号 FY-1卫星分为两个批次&#xff0c;各两颗星。01批的FY-1A星于1988年7月9日发射&#xff0c;FY-1B星于1990年9月3日发射。02批卫星在01批…

Word处理控件Aspose.Words功能演示:在 Java 中将 Word 文档转换为 EPUB

大多数智能设备&#xff0c;如智能手机、平板电脑、笔记本电脑等&#xff0c;都支持EPUB格式来查看或阅读文档。它是电子书或电子出版物的常用格式。另一方面&#xff0c;MS Word 格式&#xff0c;如DOCX、DOC等&#xff0c;是数字世界中广泛使用的文档格式之一。在本文中&…

Web3中文|NFT无法保障数字所有权?

来源 | nftnow 编译 | DaliiNFTnews.com 2021年&#xff0c;有这样一个头条新闻&#xff1a;一家投资公司以大约400万美元的价格在The Sandbox上买下了2000英亩的虚拟地产。 通过在以太坊区块链上购买792个NFT&#xff0c;该公司得到了元宇宙平台上的1200个城市街区。 但是…

家用宽带如何叠加多条宽带,提高局域网速度

前言 关于多条宽带如何合并&#xff0c;使局域网内带宽更快&#xff1f;通常我们在企业网络或实际项目中&#xff0c;随着用户的增加&#xff0c;一条或者几条带宽不能满足正常使用&#xff0c;便可以对带宽进行叠加&#xff0c;便于网络带度更快&#xff1b; 一、为什么要用…

web基础阶段的小兔鲜儿项目学习

小兔鲜儿1. 所用素材2. 项目文件介绍3. index页面的基本骨架4. 思路&#xff1a;先写外面大盒子和版心&#xff0c;由外往内写5. 源码&#xff1a;1. 所用素材 素材链接&#xff0c;点我跳转&#xff1a;https://download.csdn.net/download/angrynouse/87228151 2. 项目文件…

全国产!全志T3+Logos FPGA核心板(4核ARM Cortex-A7)规格书

核心板简介 创龙科技SOM-TLT3F是一款基于全志科技T3四核ARM Cortex-A7处理器 + 紫光同创Logos PGL25G/PGL50G FPGA设计的异构多核全国产工业核心板,ARM Cortex-A7处理单元主频高达1.2GHz。核心板CPU、FPGA、ROM、RAM、电源、晶振、连接器等所有器件均采用国产工业级方案,国产…

【HDU No. 4902】 数据结构难题 Nice boat

【HDU No. 4902】 数据结构难题 Nice boat 杭电OJ 题目地址 【题意】 有n 个数字a 1 , a 2 , …, an &#xff0c;每次都可以将[l , r ]区间的每个数字都更改为数字x &#xff08;类型1&#xff09;&#xff0c;或将[l ,r ]区间每个大于x 的ai 都更改为最大公约数gcd(ai , x …

云服务连续三年增长150%,网宿科技开拓新赛道

摘要&#xff1a;开拓云服务市场&#xff0c;网宿科技的打法。 提到网宿科技&#xff0c;很多人还停留在传统IT服务商的印象中。其实&#xff0c;网宿科技已经在一条新赛道加速前行&#xff0c;这就是云服务。 “借助亚马逊云科技的持续赋能&#xff0c;网宿科技积累了丰富的云…

swiper轮播图片+视频播放,预览及页面跳转功能

1.效果 2.上代码 <template> <swiper :circulartrue indicator-dots"true" change"changeSwiper" :autoplay"true" interval5000 classswiper-view><swiper-item class"swiper-img" v-for"(item,index) in swipe…

2022 CMU15-445 Project0 Trie

通过截图 在线测试 本地测试 总览 代码风格 我们的代码必须遵循 Google C Style Guide。在线检测网站使用 Clang 自动检查源代码的质量。如果我们的提交未通过任何这些检查&#xff0c;您的项目成绩将为零。 对于 Google C Style Guide &#xff0c;我们可以看这里 google-s…

Spring Boot Logback启动流程

Spring Boot 默认使用的是 Logback 的日志框架、Logback 的组件主要通过 Spring Boot ApplicationListener 启动的 // LoggingApplicationListener Override public void onApplicationEvent(ApplicationEvent event) {if (event instanceof ApplicationStartingEvent) {onApp…

测试工作中的测试用例设计

测试工作中的测试用例设计 测试工作的最核心的模块&#xff0c;在执行任何测试之前&#xff0c;首先必须完成测试用例的编写。测试用例是指导你执行测试&#xff0c;帮助证明软件功能或发现软件缺陷的一种说明。 进行用例设计&#xff0c;需要对项目的需求有清晰的了解&#xf…

Excel找回打开密码过程

Excel文件设置了打开密码&#xff0c;但是忘记了打开密码或者不知道这份文件的打开密码都没办法打开excel文件了。可是文件的打开密码&#xff0c;一旦忘记了&#xff0c;想要再打开文件&#xff0c;都是需要找回密码的。网上的一些绕过密码、直接删除密码都是无效的解决方法。…

C# 文件压缩解压与sqlite存储文件数据

文章目录环境压缩nugetUI代码资源链接&#xff08;下载地址&#xff09;ZipFile 类方法环境 .netframerwork4.8sqlite3 压缩 nuget <package id"System.IO.Compression" version"4.3.0" targetFramework"net48" /><package id"…

四嗪-五聚乙二醇-羧基,1682653-79-7,Tetrazine-PEG5-COOH 水溶性和稳定性怎么样?

●中文名&#xff1a;四嗪-五聚乙二醇-羧基 ●英文&#xff1a;Tetrazine-PEG5-COOH ●外观以及性质&#xff1a;Tetrazine-PEG5-COOH为红色固体&#xff0c;四嗪目前被广泛应用于蛋白质特定位点功能阐释、亚细胞结构选择性标记。四嗪PEG衍生物用于与 TCO&#xff08;反式环辛烯…

【Linux初阶】操作系统概念与定位 | 操作系统管理硬件方法、系统调用和库函数概念

&#x1f31f;hello&#xff0c;各位读者大大们你们好呀&#x1f31f; &#x1f36d;&#x1f36d;系列专栏&#xff1a;【Linux初阶】 ✒️✒️本篇内容&#xff1a;操作系统的基础概念、设计OS的目的&#xff0c;操作系统的定位&#xff0c;操作系统管理硬件方法&#xff0c;…

【正厚软件干货】我推荐你的入门编程语言选python

By——正厚技术极客陈多多 当友友看到这篇文章的时候&#xff0c;心里一定有一个学习编程的想法&#xff0c;但是又不知道挑选哪个作为入门语言&#xff01;我写这篇文章就是为了帮有困难的你做出选择&#xff01;&#xff08;作者本人有选择困难症&#xff0c;当时也纠结了好久…

图神经网络关系抽取论文阅读笔记(五)

1 依赖驱动的注意力图卷积网络关系抽取方法&#xff08;Dependency-driven Relation Extractionwith Attentive Graph Convolutional Networks&#xff09; 论文&#xff1a;Dependency-driven Relation Extraction with Attentive Graph Convolutional Networks.ACL 2021 1.1 …

Win11系统禁止关机键关机的方法教学

Win11系统禁止关机键关机的方法教学。在操作电脑的时候&#xff0c;有用户经常出现自己误触关键按键导致电脑关机的情况。对于这个情况&#xff0c;我们可以去开启电脑禁止关机按键关机的设置。这样就可以不用担心误触导致关机的问题了。一起看看设置的方法吧。 操作方法&#…

OFFER狂魔成长指南

OFFER OFFER狂魔成长指南 前言 本文章是总结了我春招的经历&#xff0c;博主背景为211某流计算机专业&#xff0c;考研失败转春招。因为计划会再考一年因此主要面试的偏国企专业&#xff08;现在放弃了&#xff0c;因为公司里面校招生就我一个本科&#xff0c;其他都是21198…