网站

循环与迭代 - JavaScript | MDN

JavaScript For 循环 - W3School

引入

循环用于让一段代码重复执行。

当需要批量处理数据、重复输出内容、遍历数组时,就会用到循环。

正文

定义

定义

循环是让代码在满足条件时重复执行的一种语句。

for 循环

for 循环适合知道循环次数的情况。

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

结构可以理解为:

for (初始值; 条件; 每次循环后的操作) {
  // 重复执行的代码
}

while 循环

while 循环适合不确定循环次数,但知道继续条件的情况。

let count = 0;
 
while (count < 3) {
  console.log(count);
  count = count + 1;
}

只要 count < 3true,循环就会继续执行。

do while 循环

do while 会先执行一次,再判断条件。

let count = 0;
 
do {
  console.log(count);
  count = count + 1;
} while (count < 3);

即使条件一开始不成立,do 里的代码也会至少执行一次。

遍历数组

循环经常用来读取数组里的每一项。

const list = ["HTML", "CSS", "JS"];
 
for (let i = 0; i < list.length; i++) {
  console.log(list[i]);
}

数组下标从 0 开始,所以 list[0] 是第一项。

常见写法

写法作用
for常用于明确次数的循环
while先判断条件,再执行
do while先执行一次,再判断条件
i++每次循环后让 i1
list.length获取数组长度

例子

输出 1 到 5

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

计算数组总和

const numbers = [1, 2, 3];
let total = 0;
 
for (let i = 0; i < numbers.length; i++) {
  total = total + numbers[i];
}
 
console.log(total);

特点

  • 循环用于重复执行代码
  • for 常用于已知次数的循环
  • while 常用于根据条件持续执行
  • do while 至少会执行一次
  • 循环条件要能变成 false
  • 遍历数组时要注意下标从 0 开始
  • 小心死循环,避免浏览器卡住

理解

循环可以理解为:把重复的事情交给代码自动做。

不用手动写很多遍相同代码,只需要写清楚从哪里开始、什么时候结束、每次做什么。

循环最常见的场景就是处理一组数据。

引出

理解循环之后,可以继续学习 JS 跳转语句,控制循环什么时候停止或跳过某一次。