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

显示金额时如何隐藏null空值同时正常展示数字0

问题原因

你代码中的判断条件val === null || !val存在逻辑漏洞:数字0属于JS/TS的假值,!val对0的判断结果为true,导致0被误拦截,返回了空字符串。

修复方案

调整判断逻辑,仅拦截null和undefined两类空值,放过合法数字0即可,修改后代码如下:

/**
 * Transform values
 * @param val 数字类型,支持传入null/undefined
 * @return 格式化后的金额字符串
 */
public transformAmount(val: number | null | undefined) {
  // 仅匹配null和undefined,不会误判0、空字符串等其他假值
  if (val == null) {
    return '';
  } else {
    return val.toLocaleString('de-DE', { maximumFractionDigits: 1, minimumFractionDigits: 1 });
  }
}

补充说明

val == null是JS/TS的常用简写,等价于val === null || val === undefined,刚好匹配你需要隐藏的空值场景,不会影响0等合法数字的正常展示。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.20 10:15:06