我必须在Jolt中进行转换,条件是如果namedisplayName中的值相同,则输出应将标志值displayOnUI设置为true,否则false

输入:

[
  {
    "name": "Mike Ellis",
    "email": "mike@gmail.com",
    "displayName": "MikeE"
  },
  {
    "name": "Sam Perry",
    "email": "samperry@gmail.com",
    "displayName": "Sam Perry"
  }
]

预期输出:

[
  {
    "name": "Mike Ellis",
    "email": "mike@gmail.com",
    "displayName": "MikeE",
    "displayOnUi": false
  },
  {
    "name": "Sam Perry",
    "email": "samperry@gmail.com",
    "displayName": "Sam Perry",
    "displayOnUi": true
  }
]

我试图进行转换,但无法获得正确的输出.有人能帮帮忙吗.谢谢.

推荐答案

您可以通过使用以下转换来判断属性的比较是形成数组(在本例中只生成1个元素)还是单个属性(在本例中只生成2个元素nested within the new object called Count),例如

[
  {
    "operation": "shift",
    "spec": {
      "*": {
        "*ame": "Cnt[&1].Count.@0"
      },
      "@": "Original" // replicate the initial JSON value
    }
  },
  {
    "operation": "modify-overwrite-beta",
    "spec": {
      "Cnt": {
        "*": {
          "Count": "=size(@(1,&))"
        }
      }
    }
  },
  {
    "operation": "shift",
    "spec": {
      "*": {
        "*": {
          "Count": "&1",
          "*": "&1.&"
        }
      }
    }
  },
  {
    "operation": "shift",
    "spec": {
      "*": {
        "1": { // stands for the second component to compare
          "1": { // keep the values are equal
            "@(2,[0])": "[&3]",
            "#true": "[&3].displayOnUi"
          },
          "2": { // keep the values are UNequal
            "@(2,[0])": "[&3]",
            "#false": "[&3].displayOnUi"
          }
        }
      }
    }
  }
]

现场http://jolt-demo.appspot.com/上的101个是:

enter image description here

Json相关问答推荐

JQ如何获取特定子元素的所有父母

用于参考的Jolt变换

Azure数据工厂-WEB活动输出赢得';t返回JSON

(已回答)JSON 读取函数返回未定义而不是预期值 - Typescript

将不带正文的 CURL POST 转换为 RESTRequest Delphi 代码 / 为 Dropbox API /get_current_account 端点编写 Delphi 代码

如何使用Powershell查找所有包含特定键值对的JSON对象并迭代所有对象?

jq :遍历 json 并在键存在时检索集合

Nifi - 忽略(或删除)JSON 的第一个数字

提交后使用 Rails 7 结合 JSON 标签进行标记

N1QL 搜索对象内的某些对象

使用 boost 属性树读取 int 数组

Qt使用QJsonDocument、QJsonObject、QJsonArray解析JSON

.NET CORE 3 升级 CORS 和 Json(cycle) XMLHttpRequest 错误

如何使用 LWP 发出 JSON POST 请求?

如何在 Rails 模型中验证字符串是否为 json

从 VS 2017 Azure Function 开发中的 local.settings.json 读取值

如何转换为 D3 的 JSON 格式?

JSON JQ 如果没有 else

IE10/11 Ajax XHR 错误 - SCRIPT7002:XMLHttpRequest:网络错误 0x2ef3

Newtonsoft 对象 → 获取 JSON 字符串