🌈
个人主页: Hygge_Code
🔥
热门专栏:从0开始学习Java | Linux学习| 计算机网络
💫
个人格言: “既然选择了远方,便不顾风雨兼程”
JavaScript 运算符与流程控制全解析
在 JavaScript 中,运算符和流程控制是实现逻辑处理的基础。本文在前文基础上补充for循环内容,全面讲解比较运算符、逻辑运算符、条件判断语句(if、switch)及循环语句(while、for),帮助你掌握 JavaScript 的逻辑构建能力。
一、运算符:自增、比较与逻辑🥝
1. 自增运算符(++)
自增运算符分为前缀(++i)和后缀(i++),核心区别在于返回值时机:
- 后缀自增(
i++):先返回当前值,再自增 - 前缀自增(
++i):先自增,再返回新值
let i = 1;
console.log(i++ + ++i + i); // 结果为7
// 解析:
// 1. i++ 先返回1,i变为2
// 2. ++i 先自增为3,返回3
// 3. 此时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.log(2 == "2"); // true(隐式转换)
console.log(2 === "2"); // false(类型不同)
console.log("aabgg" < "bzzzz"); // true(首字符"a"<"b")
3. 逻辑运算符
组合多个条件判断,返回布尔值:
| 运算符 | 描述 | 示例 | 结果 |
|---|---|---|---|
&& |
逻辑与(两边都真才真) | 3<5 && 3<9 |
true |
| 两条竖线(打不出来) | 逻辑或(至少一边真则真) | 3<5 两条竖线 3>100 |
true |
! |
逻辑非(取反) | !(2>5) |
true |
真值/假值规则:
- 假值:
0、""、null、undefined、NaN - 真值:除假值外的所有值(如非空字符串、非0数字)
console.log(!9); // false(9是真值)
console.log(!""); // true(空字符串是假值)
二、条件判断语句🥝
1. if 语句
根据条件执行代码块,条件会隐式转换为布尔值:
// 语法
if (条件) {
// 条件为真时执行
} else {
// 条件为假时执行
}
// 示例:判断空格字符串是否为真
if (" ") { // 空格字符串是真值(非空)
console.log(true); // 输出:true
} else {
console.log(false);
}
2. 三目运算符
if-else的简写形式:条件 ? 表达式1 : 表达式2
// 判断2与"2"是否绝对相等
document.write(2 === "2" ? "相等" : "不等"); // 输出:不等
3. switch 语句
用于多条件等值判断(使用===比较),需配合break防止穿透:
let num5 = 3;
switch (num5) {
case 1:
console.log("选了1");
break;
case 2:
console.log("选了2");
break;
case 3:
console.log("选了3"); // 匹配成功,输出此句
break;
default:
console.log("无匹配项");
}
// 输出:选了3
三、循环语句🥝
1. while 循环
根据条件重复执行代码块,continue可跳过本次循环:
let n = 5;
while (n--) { // n从5递减到0
if (n === 3) continue; // 跳过n=3的循环
document.write(`执行第${n}次<br/>`);
}
// 输出:
// 执行第4次
// 执行第2次
// 执行第1次
// 执行第0次
2. for 循环
更灵活的循环方式,适合已知循环次数的场景,语法:
for (初始化; 条件; 更新) {
// 循环体
}
示例:基本用法
// 输出1-5
for (let i = 1; i <= 5; i++) {
console.log(i); // 依次输出1、2、3、4、5
}
总结🍂
本文全面讲解了 JavaScript 核心运算符和流程控制:
- 自增运算符的前缀/后缀差异影响返回值
- 比较运算符中
===比==更严格(检查类型) - 逻辑运算符依赖真值/假值转换
- 条件判断:if适合区间判断,switch适合等值判断
- 循环:while适合未知次数,for适合已知次数,灵活使用
continue和break
如果我的内容对你有帮助,请 点赞 , 评论 , 收藏 。创作不易,大家的支持就是我坚持下去的动力!