编程 JavaScript 流程控制

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

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 算法 数据结构

推荐文章

用 Rust 构建一个 WebSocket 服务器
2024-11-19 10:08:22 +0800 CST
JavaScript 策略模式
2024-11-19 07:34:29 +0800 CST
CentOS 镜像源配置
2024-11-18 11:28:06 +0800 CST
Golang 几种使用 Channel 的错误姿势
2024-11-19 01:42:18 +0800 CST
微信内弹出提示外部浏览器打开
2024-11-18 19:26:44 +0800 CST
在 Vue 3 中如何创建和使用插件?
2024-11-18 13:42:12 +0800 CST
php strpos查找字符串性能对比
2024-11-19 08:15:16 +0800 CST
前端如何给页面添加水印
2024-11-19 07:12:56 +0800 CST
Go 单元测试
2024-11-18 19:21:56 +0800 CST
对多个数组或多维数组进行排序
2024-11-17 05:10:28 +0800 CST
Nginx 防盗链配置
2024-11-19 07:52:58 +0800 CST
Web 端 Office 文件预览工具库
2024-11-18 22:19:16 +0800 CST
使用 sync.Pool 优化 Go 程序性能
2024-11-19 05:56:51 +0800 CST
全栈工程师的技术栈
2024-11-19 10:13:20 +0800 CST
php 统一接受回调的方案
2024-11-19 03:21:07 +0800 CST
程序员茄子在线接单