JavaScript 教程

纯干货教学,从零开始学习 JavaScript

JavaScript 控制流

控制流是指代码执行的顺序,JavaScript 提供了多种控制流语句,用于根据条件执行不同的代码块,或者重复执行某些代码。

🎯 学习目标

通过本章节的学习,你将掌握 JavaScript 中的各种控制流语句,包括条件语句(if-else、switch)和循环语句(for、while、do-while、for-in、for-of),并能够在实际编程中灵活使用它们。

条件语句

条件语句用于根据条件执行不同的代码块:

if 语句

if 语句用于在条件为真时执行代码:

// 基本 if 语句
let age = 18;
if (age >= 18) {
    console.log("成年人");
}

// if-else 语句
let score = 85;
if (score >= 60) {
    console.log("及格");
} else {
    console.log("不及格");
}

// if-else if-else 语句
let grade = 92;
if (grade >= 90) {
    console.log("优秀");
} else if (grade >= 80) {
    console.log("良好");
} else if (grade >= 60) {
    console.log("及格");
} else {
    console.log("不及格");
}

switch 语句

switch 语句用于根据不同的值执行不同的代码块:

let day = 3;
let dayName;

switch (day) {
    case 1:
        dayName = "星期一";
        break;
    case 2:
        dayName = "星期二";
        break;
    case 3:
        dayName = "星期三";
        break;
    case 4:
        dayName = "星期四";
        break;
    case 5:
        dayName = "星期五";
        break;
    case 6:
        dayName = "星期六";
        break;
    case 7:
        dayName = "星期日";
        break;
    default:
        dayName = "无效的日期";
}

console.log(dayName); // 输出:星期三

循环语句

循环语句用于重复执行代码块:

for 循环

for 循环用于按照指定的次数重复执行代码:

// 基本 for 循环
for (let i = 0; i < 5; i++) {
    console.log("循环次数:" + i);
}

// 遍历数组
let fruits = ["苹果", "香蕉", "橙子"];
for (let i = 0; i < fruits.length; i++) {
    console.log(fruits[i]);
}

// for-in 循环 - 遍历对象属性
let person = { name: "张三", age: 25, job: "工程师" };
for (let key in person) {
    console.log(key + ": " + person[key]);
}

// for-of 循环 - 遍历可迭代对象
let colors = ["红色", "绿色", "蓝色"];
for (let color of colors) {
    console.log(color);
}

// forEach 方法 - 数组遍历
let numbers = [1, 2, 3, 4, 5];
numbers.forEach(function(number, index) {
    console.log("索引 " + index + ": " + number);
});

while 循环

while 循环用于在条件为真时重复执行代码:

// 基本 while 循环
let i = 0;
while (i < 5) {
    console.log("循环次数:" + i);
    i++;
}

// do-while 循环 - 至少执行一次
let j = 0;
do {
    console.log("循环次数:" + j);
    j++;
} while (j < 5);

循环控制语句

循环控制语句用于控制循环的执行:

break 语句

break 语句用于跳出循环:

for (let i = 0; i < 10; i++) {
    if (i === 5) {
        break; // 当 i 等于 5 时跳出循环
    }
    console.log(i);
}

continue 语句

continue 语句用于跳过当前循环的剩余部分,继续下一次循环:

for (let i = 0; i < 10; i++) {
    if (i % 2 === 0) {
        continue; // 跳过偶数,只打印奇数
    }
    console.log(i);
}

嵌套循环

嵌套循环是指在一个循环内部再使用另一个循环:

// 打印九九乘法表
for (let i = 1; i <= 9; i++) {
    let row = "";
    for (let j = 1; j <= i; j++) {
        row += i + "×" + j + "=" + (i * j) + "\t";
    }
    console.log(row);
}

💡 学习提示

  • 使用适当的缩进使代码更清晰易读
  • 避免无限循环,确保循环条件最终会变为假
  • 对于数组遍历,优先使用 for-of 循环或 forEach 方法
  • 对于对象属性遍历,使用 for-in 循环
  • 复杂的条件判断可以考虑使用 switch 语句代替多个 if-else if 语句

📝 学习检查

通过本章节的学习,你应该了解:

  • if 语句和 if-else 语句的使用方法
  • switch 语句的使用场景和语法
  • for 循环的基本用法和变种(for-in、for-of)
  • while 和 do-while 循环的区别和使用方法
  • break 和 continue 语句的作用
  • 嵌套循环的使用方法