JavaScript 循环与条件判断

在 JavaScript 中,循环和条件判断是非常常见的控制流程的结构,它们在实际开发中有着广泛的应用。下面,我将深入讲解 JavaScript 中的循环和条件判断,并通过实际案例演示它们的应用。

首先,我们来看一下循环结构。

  1. for 循环: for 循环是 JavaScript 中最常用的循环结构之一,它允许我们按照指定的条件重复执行一段代码块。
javascript 复制代码
for (let i = 0; i < 5; i++) {
  console.log(i);
}

在上面的示例中,for 循环会从 0 开始,每次循环时增加变量 i 的值,直到 i 的值不小于 5 为止。每次循环时,会执行一次 console.log(i),打印出当前 i 的值。

  1. while 循环: while 循环是另一种常见的循环结构,它用于在指定条件为真时重复执行一段代码块。
javascript 复制代码
let x = 0;
while (x < 5) {
  console.log(x);
  x++;
}

在上面的示例中,while 循环会在 x 小于 5 的条件为真时执行循环体内的代码。每次循环时,会打印出当前 x 的值,并将 x 的值增加 1。当 x 的值不再小于 5 时,循环结束。

  1. do...while 循环: do...while 循环和 while 循环非常相似,只是它会先执行一次循环体内的代码,然后再判断条件是否为真。
javascript 复制代码
let y = 0;
do {
  console.log(y);
  y++;
} while (y < 5);

在上面的示例中,do...while 循环首先会执行一次循环体内的代码,然后再判断 y 是否小于 5。如果条件为真,就会继续执行循环体内的代码,然后再次判断条件。当 y 不再小于 5 时,循环结束。

接下来,我们来看一下条件判断结构。

  1. if 语句: if 语句用于根据指定的条件选择性地执行某段代码。
javascript 复制代码
let age = 18;
if (age >= 18) {
  console.log("成年人");
}

在上面的示例中,如果 age 大于等于 18,就会执行 console.log("成年人") 打印出"成年人"。

  1. if...else 语句: if...else 语句在 if 条件为真时执行一段代码,否则执行另一段代码。
javascript 复制代码
let score = 80;
if (score >= 60) {
  console.log("及格");
} else {
  console.log("不及格");
}

在上面的示例中,如果 score 大于等于 60,就会执行 console.log("及格") 打印出"及格",否则执行 console.log("不及格") 打印出"不及格"。

  1. switch 语句: switch 语句根据表达式的值选择性地执行一段代码。
javascript 复制代码
let fruit = "apple";
switch (fruit) {
  case "apple":
    console.log("苹果");
    break;
  case "banana":
    console.log("香蕉");
    break;
  default:
    console.log("未知水果");
}

在上面的示例中,根据 fruit 的值选择性地执行一段代码。如果 fruit 的值是 "apple",就会执行 console.log("苹果") 打印出"苹果",如果 fruit 的值是 "banana",就会执行 console.log("香蕉") 打印出"香蕉"。如果 fruit 的值既不是 "apple" 也不是 "banana",就会执行 console.log("未知水果") 打印出"未知水果"。

通过上述的实例演示,我们可以看到,在实际开发中,循环和条件判断结构在控制程序流程方面起到了非常重要的作用,可以根据不同的情况执行不同的代码,实现更加灵活和复杂的程序逻辑。在编写代码时,我们可以根据实际需求选择合适的循环和条件判断结构,以达到预期的效果。

相关推荐
必须会一定会23 分钟前
Agent Plugins 1.0实战:plugin.json、skills、mcp.json目录结构与迁移
开发语言·人工智能·ai编程
St_rive39 分钟前
Page Object设计模式
java·开发语言·设计模式
wp123_11 小时前
硬件元器件笔记|IPX8 防水 Type‑C 母座安费诺 124018802112A 与 TONEVEE TY48086‑24A 分析
c语言·开发语言·笔记
wuyk5551 小时前
4.树:一对多的层次数据结构
开发语言·数据结构·stm32·单片机
luj_17682 小时前
桥牌思维启示:系统设计的模块化架构
c语言·开发语言·c++·经验分享·算法
vipbic2 小时前
一个前端的 9 天重构:我是怎么用 Codex 重做航栈的
前端·javascript·后端
caimouse3 小时前
ReactOS 图形系统分析(16):字符串对象 — STROBJ(string.c)
c语言·开发语言
Aphelios3804 小时前
一次锁内网络IO引发的Tomcat线程池“饿死”事故
java·开发语言·spring boot·elasticsearch·tomcat·网络io阻塞·线程池耗尽
不可求~4 小时前
C++ std::string_view 不是字符串:从悬空引用到安全用法
java·开发语言·c++