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

变量访问路径返回undefined时,如何给该变量赋值默认值0?

问题原因

你的代码存在两个核心错误导致无法运行:

  • 语法错误:变量声明语句与if判断语句直接连写,缺少分隔符,JS引擎无法正常解析两条独立语句,会直接抛出语法异常
  • 常量赋值错误:使用const声明的变量为只读常量,初始化完成后不允许重新赋值,后续执行balance = 0的操作会抛出类型错误

解决方案

方案1:调整声明方式+原有判断逻辑

将变量改为用let声明,拆分语句即可:

let balance = wallet.balance;
if (balance === undefined || balance === null) {  
  console.log("Balance is null or undefined"); 
  balance = 0;
}

方案2:使用空值合并运算符简化代码

JS原生的??空值合并运算符,仅当左侧值为undefined或null时才返回右侧值,完全匹配你的需求,一行即可实现:

// 不需要日志的最简写法
const balance = wallet.balance ?? 0;

如果需要保留日志输出,可以结合立即执行函数实现:

const balance = wallet.balance ?? (() => {
  console.log("Balance is null or undefined");
  return 0;
})();

内容的提问来源于stack exchange,提问作者kyle walker

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 16:15:02