20个JavaScript重点知识点(8)运算符
当前位置:点晴教程→知识管理交流
→『 技术文档交流 』
算术运算符用于数学计算,返回数值结果。
赋值运算符为变量分配值,可结合算术运算。
比较运算符返回布尔值( |
== | 5 == "5" → true | |
=== | 5 === "5" → false | |
!= | 5 != "6" → true | |
!== | 5 !== "5" → true | |
> | 10 > 6 → true | |
< | 3 < 2 → false | |
>= | 7 >= 7 → true | |
<= | 5 <= 3 → false |
建议:始终优先使用 ===
和 !==
避免隐式类型转换错误。
&& | true && false → false | |
! | !true → false |
// &&:遇到假值立即返回
false && console.log("不会执行");
// ||:遇到真值立即返回
true || console.log("不会执行");
直接操作二进制位。
& | 5 & 1 → 1 | ||||
^ | 5 ^ 1 → 4 | ||||
~ | ~5 → -6 | ||||
<< | 5 << 1 → 10 | ||||
>> | 5 >> 1 → 2 | ||||
>>> | -5 >>> 1 → 2147483645 |
其他运算符
const status = age >= 18 ? "成年" : "未成年";
2. 类型运算符
typeof
: 检测变量类型typeof "Hello" → "string"
typeof null → "object" (历史遗留问题)
instanceof
: 检测对象类型[] instanceof Array → true
按顺序执行表达式,返回最后一个结果:
let a = (1 + 2, 3 + 4); // a = 7
delete
运算符删除对象属性或数组元素:
const obj = { x: 1 };
delete obj.x; // obj变为 {}
void
运算符执行表达式并返回 undefined
:
<a href="javascript:void(0)">点击不跳转</a>
+
运算符的类型转换5 + "5" → "55" // 数字转字符串
5 + true → 6 // true转为1
5 + null → 5 // null转为0
NaN
的特殊性NaN === NaN → false // 判断NaN需用 isNaN()
0 / 0 → NaN // 无效运算返回NaN
0.1 + 0.2 → 0.30000000000000004 // 使用toFixed()处理显示
{} === {} → false // 对象比较的是内存地址
掌握JavaScript运算符需注意:
严格相等:优先使用 ===
代替 ==
短路运算:利用 &&
和 ||
简化条件判断
类型转换:注意隐式转换带来的意外结果
优先级规则:复杂表达式建议用 ()
明确优先级
阅读原文:https://mp.weixin.qq.com/s/tGNWYSCqGRhEaM-yzq-3Mw