JS(三)JavaScript中的流程控制
在JavaScript中,流程控制通常通过条件语句和循环语句来实现。常见的流程控制结构包括:
01 条件语句:
if 语句:根据条件执行不同的代码块。 if…else 语句:在条件成立时执行一个代码块,在条件不成立时执行另一个代码块。 if…else if…else 语句:用于多个条件的判断。 switch 语句:根据不同的情况执行不同的代码块。
if 语句
let num = 10;
if (num > 0) {console.log("数字是正数");
}
if…else 语句
let num = -5;
if (num > 0) {console.log("数字是正数");
} else {console.log("数字是负数或零");
}
if…else if…else 语句
let num = 0;
if (num > 0) {console.log("数字是正数");
} else if (num < 0) {console.log("数字是负数");
} else {console.log("数字是零");
}
switch 语句
let color = "blue";
switch (color) {case "red":console.log("红色");break;case "green":console.log("绿色");break;case "blue":console.log("蓝色");break;default:console.log("其他颜色");
}
02 循环语句:
for 循环:重复执行一段代码,通常用于已知循环次数的情况。 while 循环:在条件为真时重复执行代码块,用于未知循环次数的情况。 do…while 循环:先执行一次代码块,然后在条件为真时重复执行代码块,也用于未知循环次数的情况。 for…in 循环:用于遍历对象的可枚举属性。 for…of 循环:用于遍历可迭代对象(如数组、字符串等)的值。
for 循环
for (let i = 0; i < 5; i++) {console.log("当前的 i 值为:" + i);
}
while 循环
let i = 0;
while (i < 5) {console.log("当前的 i 值为:" + i);i++;
}
do…while 循环
let i = 0;
do {console.log("当前的 i 值为:" + i);i++;
} while (i < 5);
for…in 循环
const person = {name: "Alice", age: 30, gender: "female"};
for (let key in person) {console.log(key + ": " + person[key]);
}
for…of 循环
const colors = ["red", "green", "blue"];
for (let color of colors) {console.log(color);
}
03 逻辑运算符和控制流程关键字
除了上述基本的流程控制语句外,还可以结合使用逻辑运算符(如 &&、||)来进行复杂的条件判断,以及使用 break 和 continue 关键字来控制循环的执行流程。
结合逻辑运算符的条件判断
let num = 15;
if (num > 0 && num % 2 === 0) {console.log("正偶数");
} else if (num < 0 || num % 2 !== 0) {console.log("负奇数");//这里打印负奇数,虽然15不是负数,但是符合其中一个条件
} else {console.log("其他情况");
}
使用 break 控制循环
for (let i = 0; i < 5; i++) {if (i === 3) {break; // 当 i 等于 3 时跳出循环}console.log(i);
}
使用 continue 控制循环
for (let i = 0; i < 5; i++) {if (i === 2) {continue; // 当 i 等于 2 时跳过当前循环}console.log(i);
}