我有一個物件的 JSON 資料陣列,我想準備另一個陣列,其中具有匹配鍵的物件得到合并,并且計數值應該加起來。我正在使用 JSONATA。
輸入:
[
{
"name" : "t1",
"count": 1
},
{
"name":"t1",
"count": 2
},
{
"name":"t2",
"count": 4
},
]
預期輸出:
[
{
"name" : "t1",
"count": 3
},
{
{
"name" : "t2",
"count": 4
}
]
uj5u.com熱心網友回復:
查看檔案中的 reduce 運算子:https ://docs.jsonata.org/path-operators#---reduce和一些分組示例:https ://docs.jsonata.org/sorting-grouping#grouping
將它聚合成一個物件后, $each 函式是將其轉換回陣列的好方法:https ://docs.jsonata.org/object-functions#each
$${ name: $sum(count) }
~> $each(function($value, $key) {
{ "name": $key, "count": $value }
})
現場示例:https ://stedi.link/1oARv4p
請記住,如果您喜歡這樣的代碼風格,您也可以使用 $reduce 函式并在其中撰寫所有分組邏輯:https ://stedi.link/99gVGwm
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/510068.html
標籤:jsonjsonata
上一篇:嘗試閱讀這本詞典時出現錯誤
