0

我首先要说我知道,根据json.org,“一个对象是一组无序的名称/值对。” 尽管如此,在现实世界中,有时按字母顺序查看键会很好。

未分类:

{"B":2,"A":1,"C":3}

排序:

{"A":1,"B":2,"C":3}

有没有办法在 JSONata 中做到这一点?(我知道我可以在 JSONata 之外对数据进行预处理或后处理,但我很好奇是否有办法通过 JSONata 来做到这一点。)

谢谢你。

4

1 回答 1

0

我刚刚编写了以下函数:

$sortObjectAlphabetically := function($obj){
    (
        $keys := [$keys($obj)];
        $keys := $keys^(<$);
        $merge([$map($keys,function($e){
            (
                {
                    $e : $lookup($obj,$e)
                }
            )
        })]);
    )
};

我在这个链接上做了一个例子:https ://try.jsonata.org/RbJqQxO0i

于 2021-06-06T20:59:10.930 回答