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

如何用Jolt处理器移除JSON中所有值为null的字段?

使用Jolt移除值为null的JSON字段

当然可以!Jolt完全能帮你轻松移除所有值为null的字段,只保留有实际值的字段。这里给你两种可行的方案,你可以根据需求选择:

方案一:用shift操作直接过滤推荐

这种方式更高效,一步就能完成过滤,不需要先移除再恢复:

[
  {
    "operation": "shift",
    "spec": {
      "*": {
        "?(@ != null)": "&1"
      }
    }
  }
]

代码解释:

  • *:匹配JSON中的所有顶层字段;
  • ?(@ != null):这是Jolt的条件判断语法,只处理值不为null的字段;
  • &1:引用上层的字段名(也就是原字段名),把符合条件的字段保留到输出结果里。

方案二:先移除所有字段,再恢复非null字段

如果你更倾向于用remove操作配合其他步骤,也可以这么做:

[
  // 第一步:移除所有字段
  {
    "operation": "remove",
    "spec": {
      "*": ""
    }
  },
  // 第二步:从原数据中恢复非null的字段
  {
    "operation": "shift",
    "spec": {
      "@": {
        "*": {
          "?(@ != null)": "&1"
        }
      }
    }
  }
]

测试示例

输入JSON:

{"myValue": 345, "colorValue": null, "degreeDayValue": null, "depthValue": null, "distanceValue": null}

输出JSON:

{"myValue": 345}

如果你的JSON存在嵌套结构,只需要调整spec的层级就能处理嵌套里的null字段,比如要处理parent.child这样的嵌套字段,只需要把spec的层级对应上就行。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.20 12:16:45