编程 JavaScript 流程控制

2024-11-19 05:14:38 +0800 CST views 760

JavaScript 流程控制

1. 选择结构

if 语句
if 语句从上到下顺序执行,使用条件判断来决定执行的代码块。

示例代码:

<script>
  var score = 73;
  if (score >= 90) {
    console.log("优秀");
  } else if (score >= 80) {
    console.log("良好");
  } else if (score >= 70) {
    console.log("中等");
  } else if (score >= 60) {
    console.log("及格");
  } else {
    console.log("不及格");
    if (score < 10) {
      console.log("直接退学");
    } else {
      console.log("重修");
    }
  }
</script>

switch 语句
switch 语句在给定的值上匹配多个情况(case),适用于有限的分支选择。

示例代码:

<script>
  var score = parseInt(73 / 10);
  switch (score) {
    case 10:
    case 9:
      console.log("优秀");
      break;
    case 8:
      console.log("良好");
      break;
    case 7:
      console.log("中等");
      break;
    case 6:
      console.log("及格");
      break;
    default:
      console.log("不及格");
      break;
  }
</script>

2. 循环结构

for 循环
适用于已知循环次数的情况。

<script>
  for (var i = 1; i <= 10; i++) {
    console.log(i);
  }
</script>

while 循环
在条件为真时重复执行代码块。

<script>
  var i = 1;
  while (i <= 10) {
    console.log(i);
    i++;
  }
</script>

do...while 循环
先执行代码块,再判断条件是否为真。

<script>
  var i = 20;
  do {
    console.log(i);
    i++;
  } while (i <= 10);
</script>

3. 实战练习

水仙花数
计算100到999之间的水仙花数。

<script>
  for (var i = 100; i < 1000; i++) {
    var a = i % 10;
    var b = parseInt((i % 100) / 10);
    var c = parseInt(i / 100);
    if (a * a * a + b * b * b + c * c * c === i) {
      document.write(i + "<br>");
    }
  }
</script>

1 到 100 的累加和(3种循环)

<script>
  var sum = 0;
  for (var n = 1; n <= 100; n++) {
    sum += n;
  }
  document.write(sum);
</script>

菱形图案
输出使用“*”和“-”组成的菱形图案。

<script>
  for (var i = 0; i < 4; i++) {
    for (var j = 0; j < 3 - i; j++) {
      document.write("-");
    }
    for (var k = 0; k < 2 * i + 1; k++) {
      document.write("*");
    }
    document.write("<br>");
  }
  for (var i = 0; i < 3; i++) {
    for (var j = 0; j <= i; j++) {
      document.write("-");
    }
    for (var k = 0; k < 5 - 2 * i; k++) {
      document.write("*");
    }
    document.write("<br>");
  }
</script>

九九乘法表

<script>
  for (var a = 1; a < 10; a++) {
    for (var b = 1; b <= a; b++) {
      document.write(b + "*" + a + "=" + a * b + " ");
    }
    document.write("<br>");
  }
</script>

JavaScript 提供了多种流程控制结构,可以通过组合使用来实现复杂的逻辑和任务。

复制全文 生成海报 编程 JavaScript 算法 数据结构

推荐文章

前端代码规范 - 图片相关
2024-11-19 08:34:48 +0800 CST
Vue3中如何实现状态管理?
2024-11-19 09:40:30 +0800 CST
js迭代器
2024-11-19 07:49:47 +0800 CST
如何实现虚拟滚动
2024-11-18 20:50:47 +0800 CST
一键压缩图片代码
2024-11-19 00:41:25 +0800 CST
Vue3 实现页面上下滑动方案
2025-06-28 17:07:57 +0800 CST
介绍 Vue 3 中的新的 `emits` 选项
2024-11-17 04:45:50 +0800 CST
Vue中的表单处理有哪几种方式?
2024-11-18 01:32:42 +0800 CST
pin.gl是基于WebRTC的屏幕共享工具
2024-11-19 06:38:05 +0800 CST
Go 并发利器 WaitGroup
2024-11-19 02:51:18 +0800 CST
纯CSS实现3D云动画效果
2024-11-18 18:48:05 +0800 CST
使用 Go Embed
2024-11-19 02:54:20 +0800 CST
程序员茄子在线接单