You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

逻辑或(Logical OR)行为疑问:不同值参与||运算结果解析

JavaScript 逻辑或(||)运算原理解析

核心规则:短路求值 + 返回第一个真值

JavaScript 中的逻辑或运算符 || 并非简单返回布尔值,而是遵循短路求值逻辑,返回第一个被判定为真值的操作数,而非统一转换为布尔结果。

先明确:真值与假值

JS 中存在固定的假值列表,不在此列的所有值都是真值:

  • 假值:false、undefined、null、0、""(空字符串)、NaN
  • 真值:非空字符串、非零数字、true、对象、数组等所有非假值

对应你的案例逐一拆解

  1. true || "Word" → 返回 true
    true 是真值,|| 会直接返回第一个真值,不会再处理第二个操作数(短路特性)。
  2. false || "Word" → 返回 "Word"
    false 是假值,|| 会继续评估第二个操作数,"Word" 是真值,因此返回它。
  3. undefined || "Word" → 返回 "Word"
    undefined 属于假值,|| 继续评估第二个操作数,返回真值 "Word"。

内容的提问来源于stack exchange,提问作者Fabio Marzocca

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 11:04:58