JavaScript 运算符对照表
免费使用
超详细版
可复制
JavaScript 运算符完整速查表,涵盖算术、比较、逻辑、位运算、赋值、三元、可选链 ?.、空值合并 ??、typeof、in、delete 等全部内容,并包含 ES2015~ES2022 新增运算符。每条均配示例与结果说明。
JavaScript 运算符注意事项
- • 始终使用
===和!==,避免==隐式类型转换带来的坑(如0 == ""为 true) - •
+号是 JS 最易出错的运算符:数字相加 vs 字符串拼接取决于操作数类型 - •
??和||的区别:??只对 null/undefined 生效,||对所有假值(0、""、false)生效 - •
?.可选链可安全访问深层属性,避免 Cannot read property of undefined 错误 - •
typeof null返回"object",这是历史遗留 bug,判断 null 请用val === null - • 位运算会将操作数转为 32 位有符号整数,不适合处理大数(>2^31-1)
- •
**是右结合的:2 ** 3 ** 2=2 ** 9= 512 - • 逗号运算符
,返回最后一个表达式的值,常用于 for 循环和简洁代码
?? vs ||
?? 只排除 null/undefined;|| 排除所有假值(0、""、false)
?. 安全访问
obj?.a?.b 任何一层为 null/undefined 都返回 undefined,不抛错
类型转换陷阱
+ 号遇字符串变拼接;! 转布尔取反;== 隐式转换规则复杂
位运算限制
操作数先转 32 位整数,超过 2^31-1 会溢出,不适合大数