JavaScript 运算符与流程控制详解
在 JavaScript 开发中,运算符和流程控制是构建业务逻辑的基石。本文将深入讲解比较运算符、逻辑运算、条件判断及循环语句,重点剖析容易踩坑的细节,帮助你写出更健壮的代码。
运算符:自增、比较与逻辑
1. 自增运算符(++)
自增分为前缀(++i)和后缀(i++),核心区别在于返回值时机不同:
- 后缀自增(
i++):先返回当前值,变量再自增。 - 前缀自增(
++i):变量先自增,再返回新值。
let i = 1;
console.log(i+++++i + i); // 结果为 7
/*
* 解析过程:
* 1. i++ 先返回 1,此时 i 变为 2
* 2. ++i 先将 i 自增为 3,返回 3
* 3. 最后的 + i 取当前 i 的值 3
* 总和:1 + 3 + 3 = 7
*/
2. 比较运算符
用于判断值的关系,返回布尔值。需特别注意 == 与 === 的区别:
| 运算符 | 特点 | 示例 | 结果 |
|---|---|---|---|
== | 只比较值(隐式转换类型) | 2 == "2" | true(字符串转数字) |
=== | 比较值和类型(无转换) | 2 === "2" | false(类型不同) |
!= | 只比较值不相等 | 2 != "2" | false(值相等) |
!== | 比较值或类型不相等 | 2 !== "2" | true(类型不同) |
特殊规则提示:
- 字符串按字符编码比较(如
"a" < "b"为true)。 NaN与任何值比较都返回false,包括它自身。
console.( == );
.( === );
.( < );


