红宝书第三讲:JavaScript 操作符与流程控制详解

红宝书第三讲:JavaScript 操作符与流程控制详解

资料取自《JavaScript高级程序设计(第5版)》。 查看所有教程:红宝书学习大纲


一、常用操作符

操作符用于对数据进行计算和比较:^1^

  1. 算数操作符

    • +(加)、-(减)、*(乘)、**(幂)、/(除)

      javascript 复制代码
      const sum = 10 + 5;   // 结果为15
      const power = 2 ** 3; // 2的3次方,结果为8
  2. 比较操作符

    • >(大于)、<(小于)、==(相等,会转换类型)、===(严格相等,类型和值都相同) )^1^

      javascript 复制代码
      5 == "5";   // true(数值转换后相等)
      5 === "5";  // false(类型不同
  3. 逻辑操作符

    • &&(逻辑与)、||(逻辑或)、!(逻辑非) ^2^

      javascript 复制代码
      if (age > 18 && loggedIn) { 
          // 年龄大于18且已登录才执行
      } else if (isVIP || isAdmin) {
          // VIP或管理员满足其一即可
      }
  4. 空值合并操作符(??)

    • 当左侧是 null 或 undefined 时返回右侧值: ^1^

      javascript 复制代码
      const username = inputName ?? "Guest"; // 若inputName为空,则用"Guest"

二、条件语句

根据条件执行不同代码块:

  1. if / else if / else

    • 基本条件判断: ^2^

      javascript 复制代码
      if (score >= 90) {
          console.log("优秀");
      } else if (score >= 60) {
          console.log("及格");
      } else {
          console.log("不及格");
      }
  2. switch 语句

    • 适用于多分支判断(必须有 break 退出): ^1^

      javascript 复制代码
      switch (day) {
          case 1:
              console.log("周一");
              break;
          case 2:
              console.log("周二");
              break;
          default:
              console.log("其他日期");
      }

三、循环语句

重复执行代码段:

  1. for 循环

    • 常用于确定次数的重复: ^1^

      javascript 复制代码
      let total = 0;
      for (let i = 1; i <= 10; i++) {
          total += i; // 计算1到10的总和
      }
  2. for-of 循环

    • 遍历数组和可迭代对象: ^3^

      javascript 复制代码
      const fruits = ["苹果", "香蕉", "橘子"];
      for (const fruit of fruits) {
          console.log(fruit); // 依次输出每个水果名称
      }
  3. while / do-while 循环 ^2^

    • while:先判断条件后执行

    • do-while:至少执行一次再判断条件:

      javascript 复制代码
      let count = 0;
      while (count < 5) {    
          console.log(count);
          count++;
      } // 输出0到4
      
      let num = 10;
      do {
          console.log(num); // 输出10,即使条件不成立
      } while (num < 5);

四、流程控制关键字

  1. break :立即退出整个循环或 switch 语句

    javascript 复制代码
    for (let i = 0; i < 10; i++) {
        if (i === 5) break; // 当i=5时结束循环
    }
  2. continue :跳过当前循环的剩余代码,进入下一次循环 ^1^

    javascript 复制代码
    for (let i = 0; i < 10; i++) {
        if (i % 2 === 0) continue; // 跳过偶数
        console.log(i); // 输出奇数
    }

目录:总目录 上篇文章:第二讲:JavaScript变量声明:var、let、const详解

Footnotes

  1. 条件判断、switch、循环语法,《JavaScript高级程序设计(第5版)》 第3章 ↩ ↩2 ↩3 ↩4 ↩5 ↩6

  2. if 多分支与 do-while 示例,《JavaScript高级程序设计(第5版)》 第3章 ↩ ↩2 ↩3

  3. for-of 遍历数组的用法,《JavaScript高级程序设计(第5版)》 第3章 ↩

相关推荐
Hello.Reader9 小时前
Three.js / Cesium 卡顿怎么办?把三维渲染搬到 GPU 服务器
服务器·开发语言·javascript
chi11309 小时前
【无标题】
前端·javascript·python
萝卜兔0089 小时前
PIKACHU_UnsafeFileUpload
javascript·php
IT_陈寒9 小时前
JavaScript实战技巧总结:深挖数组遍历的性能陷阱与实战解法
前端·人工智能·后端
步行cgn10 小时前
为什么既要 web.xml 又要 springmvc.xml?能不能只配一个?
xml·前端·hive
风骏时光牛马10 小时前
大模型综合能力评测:多维度性能与对齐效果对比
前端
winfredzhang10 小时前
从零手写一个毛玻璃风格的页面搭建台:单文件 HTML 实现组件放置、面板磁吸与图层管理
前端·html
葡萄城技术团队18 小时前
1000 人协同压测的环境瓶颈排查:CPU 争用与 Wi\-Fi
前端
excel19 小时前
Marked 与 Markdown 有什么区别?该怎么选?
前端
Da Da 泓20 小时前
五子棋 Web 端测试用例报告
前端·网络·websocket·网络协议·测试用例·项目