JSONata查询以展平数组数组

时间:2018-03-30 07:23:26

标签: jsonata

JSONata doc "top-level-arrays-nested-arrays-and-array-flattening"涵盖了对象数组的“flatten”情况,每个对象都包含一个包含数组值的属性。

但是,我还没弄清楚如何压平阵列数组。

问:什么是用于展平数组数组的JSONata查询?

输入

    [ [1,2], [], [3] ]

期望的

    [ 1, 2, 3 ]

2 个答案:

答案 0 :(得分:1)

我已经发现,通过使用$reduce函数迭代地应用$append函数,可以完成对数组数组的展平。

    $reduce($, $append)

对于这个简单的测试用例:

    $reduce( [ [1,2], [], [3] ], $append)

问:还有其他方法可以在JSONata中展平数组数组吗?

答案 1 :(得分:0)

在JSONata中,遍历数组的所有元素会返回附加在一起的元素的扁平数组......所以它真的很简单:

$.*

几乎看起来像一个表情符号!; *)

从技术上讲,您甚至不需要$.前缀 - 但只使用表达式*对我来说不合适......