JavaScript中的短路表达式

JavaScript中的短路表达式是一种逻辑运算符的使用方法,主要用于简化代码和判断操作。短路表达式可以使用逻辑与(&&)和逻辑或(||)两种运算符实现。

当使用逻辑与运算符时,如果第一个操作数是假值(例如false、null、undefined、空字符串或0),整个表达式将返回这个假值。否则,如果第一个操作数是真值,整个表达式将返回第二个操作数。

例如,下面代码中如果age为假值,则不执行console.log()中的语句:

javascript 复制代码
let age = null;
age && console.log("年龄为" + age);

当使用逻辑或运算符时,如果第一个操作数是真值,则整个表达式将返回这个真值。否则,如果第一个操作数是假值,整个表达式将返回第二个操作数。

例如,下面代码中如果name为真值(非空字符串),则返回name的值;否则返回"default"字符串:

javascript 复制代码
let name = "";
let result = name || "default";
console.log(result);

短路表达式在JavaScript中非常常用,可以简化代码并提高运行效率。但需要注意的是,一些复杂的逻辑可能会被短路表达式所掩盖,从而产生意想不到的结果。因此,在使用短路表达式时需要仔细考虑逻辑的正确性和可读性。

相关推荐
kyriewen1 小时前
2026 年了,还在用 Node.js?Bun 迁移实战:20 分钟搞定,附踩坑记录
前端·javascript·node.js
minglie7 小时前
一个置换问题
javascript
默_笙7 小时前
🌀 别再手动写 Prompt 了!我让 AI 自己循环改到满意为止
javascript
To_OC18 小时前
LC 994 腐烂的橘子:人人都说是 BFS 入门题,我却写了三遍才过
javascript·算法·leetcode
To_OC1 天前
LC 200 岛屿数量:经典 DFS 入门题,我第一次写居然连方向都搞错了
javascript·算法·leetcode
labixiong1 天前
实现一个能跑的迷你版Promise(一)
前端·javascript·面试
weedsfly1 天前
还在用 Axios?你可能需要重新理解 XHR 与 Fetch
前端·javascript·面试
CoderWeen1 天前
从零实现一个 Vue3 流程图编辑器:节点拖拽、贝塞尔连线与框选
前端·javascript
To_OC2 天前
LC 128 最长连续序列:别上来就排序,O (n) 解法才是这题的灵魂
javascript·算法·leetcode
kyriewen2 天前
我用 50 行代码重写了 React Router 核心,终于搞懂了前端路由原理
前端·javascript·react.js