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

如何通过Jolt移除嵌套JSON中dummy_var5内的空JSON对象

使用Jolt移除JSON数组中的空对象

我的JSON结构固定,其中dummy_var5数组内包含一个空JSON对象{},尝试用AtlasMap工具无法移除该空对象,请问能否通过Jolt实现移除操作?

原始JSON

{"dummy_var1": "abc","dummy_var2": [{"item": {"action": "test","po": {"id": "abc"},"ot": "test1","id": "1"}}],"dummy_var3": {"dummy_var4": [{"name": "test","value": "test1"},{"name": "test","value": "test1"}],"name": "test2"},"dummy_var5": [{"ref": "test","name": "test1","type": null},{}],"dummy_var6": [{"role": "test","ref": "test1","partyDescription": "test2"}]}

期望输出JSON

{"dummy_var1": "abc","dummy_var2": [{"item": {"action": "test","po": {"id": "abc"},"ot": "test1","id": "1"}}],"dummy_var3": {"dummy_var4": [{"name": "test","value": "test1"},{"name": "test","value": "test1"}],"name": "test2"},"dummy_var5": [{"ref": "test","name": "test1","type": null}],"dummy_var6": [{"role": "test","ref": "test1","partyDescription": "test2"}]}

Jolt转换方案

可以通过Jolt的modify-overwrite-beta操作结合过滤函数实现,具体转换规则如下:

[
  {
    "operation": "modify-overwrite-beta",
    "spec": {
      "dummy_var5": "=filter(@, & != {})"
    }
  }
]

规则说明

  • modify-overwrite-beta:用于修改指定字段的值,支持调用内置函数处理数据
  • =filter(@, & != {}):对dummy_var5数组执行过滤,保留所有不等于空对象{}的元素,直接移除空对象条目

将上述规则应用到原始JSON后,即可得到期望的输出结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 13:05:20