编程 JavaScript 流程控制

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

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

推荐文章

CSS 特效与资源推荐
2024-11-19 00:43:31 +0800 CST
Dropzone.js实现文件拖放上传功能
2024-11-18 18:28:02 +0800 CST
回到上次阅读位置技术实践
2025-04-19 09:47:31 +0800 CST
实用MySQL函数
2024-11-19 03:00:12 +0800 CST
Rust 并发执行异步操作
2024-11-19 08:16:42 +0800 CST
使用 `nohup` 命令的概述及案例
2024-11-18 08:18:36 +0800 CST
如何优化网页的 SEO 架构
2024-11-18 14:32:08 +0800 CST
thinkphp分页扩展
2024-11-18 10:18:09 +0800 CST
前端代码规范 - 图片相关
2024-11-19 08:34:48 +0800 CST
Go 语言实现 API 限流的最佳实践
2024-11-19 01:51:21 +0800 CST
php使用文件锁解决少量并发问题
2024-11-17 05:07:57 +0800 CST
markdowns滚动事件
2024-11-19 10:07:32 +0800 CST
Vue3中如何实现国际化(i18n)?
2024-11-19 06:35:21 +0800 CST
一些高质量的Mac软件资源网站
2024-11-19 08:16:01 +0800 CST
10个几乎无人使用的罕见HTML标签
2024-11-18 21:44:46 +0800 CST
liunx宝塔php7.3安装mongodb扩展
2024-11-17 11:56:14 +0800 CST
JavaScript设计模式:装饰器模式
2024-11-19 06:05:51 +0800 CST
开发外贸客户的推荐网站
2024-11-17 04:44:05 +0800 CST
一个简单的html卡片元素代码
2024-11-18 18:14:27 +0800 CST
程序员茄子在线接单