0

我刚开始使用 JSONata,我发现轻松解析 JSON 非常有趣。但是我有这个问题,我不确定是否可以直接用JSONata完成。

我想包括一个从 1 到“数组中的对象数”的计数器,如下所示:

JSONata 表达式的原始输出:

[ {“a”:假,“b”:“”,“c”:“”,“d”:真},{“a”:假,“b”:“”,“c”:“”, “d”:真},{“a”:假,“b”:“”,“c”:“”,“d”:真}]

想要的输出:

[ { "count": "1", "a": false, "b": "", "c": "", "d": true }, { "count": "2", "a":假,“b”:“”,“c”:“”,“d”:真},{“计数”:“3”,“a”:假,“b”:“”,“c”:“ ", "d": 真 } ]

可能吗?先感谢您。

4

1 回答 1

2

您可以使用$map()函数遍历列表并将表达式应用于每个项目。函数的第二个参数将是数组中的索引。因此,对于您的示例,以下内容会将count属性合并到您的原始对象数组中:

$ ~> $map(function($v, $i) {
  $merge([{'count': $i+1}, $v])
})

在 JSONata 练习器中查看此操作:http: //try.jsonata.org/rkDpyXMVM

于 2018-01-09T10:59:46.373 回答