掌握 JavaScript 中的循环:综合指南
来源:dev.to
时间:2024-12-06 21:39:50 364浏览 收藏
编程并不是一个机械性的工作,而是需要有思考,有创新的工作,语法是固定的,但解决问题的思路则是依靠人的思维,这就需要我们坚持学习和更新自己的知识。今天golang学习网就整理分享《掌握 JavaScript 中的循环:综合指南》,文章讲解的知识点主要包括,如果你对文章方面的知识点感兴趣,就不要错过golang学习网,在这可以对大家的知识积累有所帮助,助力开发能力的提升。
循环是编程的基础:使我们能够用最少的代码执行重复性任务。无论您是刚刚入门的初学者,还是希望精炼知识的经验丰富的开发人员,理解循环都将大大增强您编写高效、干净且有趣的代码的能力。
在本指南中,我们将深入研究不同类型的循环、它们在流行编程语言中的语法,以及有关何时以及如何有效使用它们的一些提示。
什么是循环?
循环是一种编程结构/函数,它允许我们重复一组指令,直到满足特定条件。通过使用循环,我们可以避免重复、处理大型数据集并有效地机械化任务。 javascript 中使用循环来根据条件执行重复任务,此条件通常返回 true 或 false。
常见用例包括:
- 迭代列表或数组
- 运行代码一定次数
- 搜索集合中的特定项目
- 执行某个操作,直到满足条件
循环类型
- for 循环
- while 循环
- do-while 循环
- for...of 循环
- for...in 循环
- 嵌套循环
大多数编程语言中通常存在三种主要类型的循环:
- for 循环
- while 循环
- do-while 循环
让我们来分解一下每种类型。
- for 循环
当您预先知道需要执行一段代码多少次时,可以使用 for 循环,它非常适合迭代数组或集合。
语法(javascript 示例):
示例1:
for i in range(5); print("hello, world!");
在此示例中,range(5) 生成一个从 0 到 4 的序列。循环将运行五次,打印“hello, world!”每次。
示例2:
for(let i = 0; i <= 10; i++) { console.log(i); }
在此示例中,它指出;如果等于 0 的 i 小于或等于 10,则令 i = 0;增量(i++)。这个 javascript 运算符(++)将返回原始值并循环直到 10。
示例3:
for(let i = 0; i <= 10; i++) { console.log(`for loop number: ${i}`); }
此示例实际上与前面的示例相同,不同之处在于使用美元符号 ($) 和反引号来提供将文本“for loop number”添加到循环的功能。
示例 4:
for (let i = 20; i >= 0; i--){ console.log(i) }
在此示例中,它指出,令 i = 20;如果 i 大于或等于 0 则减量。自减运算将数字减 1,它使用 --operator。
何时使用:
当您知道确切的迭代次数或需要迭代列表、字典或数组中的元素时,请使用 for 循环。
- while 循环
当事先不知道迭代次数时,使用 while 循环。相反,循环将继续下去,直到不再满足指定的条件。 while 循环的不同之处在于您在外部设置变量。
语法(javascript 示例):
示例1:
let i = 0; while(i < 10){ console.log(`for while number: ${i}`); i++; }
在这个例子中可以看出变量是在外部设置的,它声明let i = 0;如果 i 小于 10 增量(i++),则使用美元符号($)和反引号来配置文本“for while loop”。
示例2:
let johnpaul = 0; while(johnpaul < 5) { console.log("hello, world!"); johnpaul++; }
在此示例中,代码将变量 johnpaul 初始化为 0,并使用 while 循环打印“hello, world!”直到约翰保罗满 5 岁。
何时使用:
当迭代次数未知或取决于循环内可能发生变化的条件时,请使用 while 循环。它通常用于需要持续检查的任务,例如等待用户输入。
- do-while 循环
do-while 循环与 while 循环类似,但它保证循环内的代码在测试条件之前至少运行一次。这种类型的循环并非在所有语言(例如 python)中都可用,但在 javascript、c 和 java 中很常见。
语法(javascript 示例):
示例1:
let jude = 0; do { console.log("hello world!"); jude++; } while (jude < 5);
在这种情况下,“你好,世界!”将在评估条件 (jude < 5) 之前打印一次。
示例2:
let number = 1; do { console.log("current number is: " + number); number++; } while (number <= 5);
在此示例中,数字初始化/等于 1。然后运行 do 块,打印“当前数字是:”,后跟数字的值。打印后,number 增加 1 只要条件(number <= 5)为真,这个循环就会持续下去。与 while 循环不同,do-while 循环确保 do bock 内的代码至少执行一次,无论条件的初始值如何。
何时使用:
当无论条件如何都需要循环体至少执行一次时,请使用 do-while 循环。对于在循环内进行初始化的任务非常有用。
选择正确的循环
for 循环:当您知道确切的迭代次数或需要
迭代元素。while 循环:当迭代次数未知且取决于
时 状况。do-while 循环:当您希望循环体之前至少执行一次时,即使条件最初为 false。
循环控制:中断和继续
在大多数编程语言中,都有控制语句来管理循环执行:
- break:立即退出循环。
- 继续:跳过当前迭代并移至下一个迭代。
示例:
for (let i = 0; i < 10; i++) { if (i === 5) { break; // Stops the loop when i is 5 } else if (i % 2 === 0) { continue; // Skips even numbers } }
说明:
- 循环从 0 迭代到 9。
- 当 i 为 5 时,break 停止循环。
- 如果 i 是偶数,则继续跳到下一次迭代而不打印。
- 仅打印 5 以下的奇数。
循环的常见错误
无限循环:当循环的退出条件永远不会
时,就会发生这种情况 遇见了。例如忘记在 while 循环中增加计数器。差一错误:当范围不
时,经常发生在for循环中 设置正确。不必要的循环:使用优化操作或内置函数可以提高效率的循环。
最佳实践
使用描述性变量:使用 i、a 或 b 等通用名称,
尽管不是描述性的,但也算数。而是使用描述性变量名称
如果可能的话,比如 john、main、count、jude、johnpaul 等,
特别是对于嵌套循环。考虑性能:在大型数据库上运行的循环可能会减慢
程序。寻找优化,例如数组
中的列表推导式 javascript 中的方法。
结论
循环是编程中必不可少的工具,使您能够自动执行重复任务并轻松处理复杂的数据库。通过掌握 for、while 和 do-while 循环,您将能够应对各种编码挑战。
希望这有帮助!如果您希望我添加具体的细节或示例,请告诉我,如果您在运行代码时遇到任何困难/问题,请向我询问,我很乐意提供帮助。
编码快乐!
以上就是本文的全部内容了,是否有顺利帮助你解决问题?若是能给你带来学习上的帮助,请大家多多支持golang学习网!更多关于文章的相关知识,也可关注golang学习网公众号。
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
144 收藏
-
173 收藏
-
378 收藏
-
124 收藏
-
444 收藏
-
364 收藏
-
341 收藏
-
238 收藏
-
181 收藏
-
295 收藏
-
232 收藏
-
337 收藏
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 542次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 508次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 497次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 484次学习