JavaScript循环与迭代,用js函数(for, while, do…while)告别重复劳动

JavaScript循环与迭代,用js函数(for, while, do…while)告别重复行为。

JavaScript和其它编程语言一样,都是用不同的函数来执行某特定的工作,进而达到我们需求的效果。

比如,你需要让计算机重复执行一项任务,例如打印数字1到100,你会怎么做?当然不是手动写100行 console.log!循环((for, while, do…while))就是为了解决重复性任务而生的。它允许我们多次执行同一段代码块,极大地提高了效率。

1. 循环的概念

循环就像一台不知疲倦的机器,只要满足特定条件,它就会一遍又一遍地执行相同的操作。它主要用于:

  • 遍历集合:​​ 如处理数组中的每个元素。
  • 重复操作:​​ 直到某个条件被满足。

2. for 循环

这是最常用、最清晰的循环结构。

语法:​

for (初始化; 条件; 最终表达式) {
    // 要循环执行的代码块
}
  • 初始化:​​ 在循环开始前执行一次,通常用于初始化一个计数器变量。
  • 条件:​​ 在每次循环迭代检查。如果为 true,则执行循环体;如果为 false,则停止循环。
  • 最终表达式:​​ 在每次循环迭代执行,通常用于更新计数器。

示例:打印数字1到5

for (let i = 1; i <= 5; i++) {
    console.log("这是第 " + i + " 次循环");
}
// 输出:
// 这是第 1 次循环
// 这是第 2 次循环
// ...
// 这是第 5 次循环
  • let i = 1:初始化计数器 i为1。
  • i <= 5:条件是 i小于等于5。
  • i++:每次循环后,i增加1(i++等同于 i = i + 1)。

3. while 循环

while循环在条件为真时,重复执行代码块。它更适用于不确定要循环多少次的情况。

语法:​

while (条件) {
    // 要循环执行的代码块
}

示例:模拟掷骰子,直到掷出6点

let dice = 0;
while (dice !== 6) {
    dice = Math.floor(Math.random() * 6) + 1; // 生成1-6的随机整数
    console.log("掷出了:" + dice);
}
console.log("终于掷出了6点,游戏结束!");

4. do…while 循环

do...while循环是 while循环的变体。它先执行一次循环体,然后再检查条件。这意味着循环体至少会执行一次

语法:​

do {
    // 要循环执行的代码块
} while (条件);

示例:​

let number;
do {
    number = prompt("请输入一个大于10的数字:"); // prompt是一个弹窗输入函数
} while (number <= 10);
console.log("你输入了:" + number);

5. 循环控制:breakcontinue

这两个关键字可以让你更精细地控制循环流程。

  • break:​​ 立即终止整个循环,并跳出。
    for (let i = 1; i <= 10; i++) {
        if (i === 5) {
            break; // 当i等于5时,跳出循环
        }
        console.log(i);
    }
    // 输出:1, 2, 3, 4
  • continue:​​ ​跳过当前这次迭代,立即开始下一次循环。
    for (let i = 1; i <= 5; i++) {
        if (i === 3) {
            continue; // 当i等于3时,跳过本次循环的剩余代码
        }
        console.log(i);
    }
    // 输出:1, 2, 4, 5 (跳过了3)

6. 实战练习

练习1:计算1到100所有数字的总和。​

let sum = 0;
for (let i = 1; i <= 100; i++) {
    sum += i;
}
console.log("1到100的总和是:" + sum); // 输出:5050

练习2:遍历一个数组。​

let fruits = ["苹果", "香蕉", "橙子", "芒果"];
for (let i = 0; i < fruits.length; i++) { // 数组索引从0开始
    console.log("我喜欢吃" + fruits[i]);
}

总结

循环(for, while, do...while)是自动化重复任务的强大工具。breakcontinue提供了额外的流程控制。掌握了循环,你就拥有了让计算机高效工作的关键能力。

发表评论