震动规格的转换。在这里,我们将拥有 queryFriendList 列表,其中我们还有一个对象列表,并且在该列表中我们将拥有需要转换的名称值对中的详细信息。 我在键值对中有一些数据需要转换为 id 值,如
accountId:"885580007377"
,我们需要迭代 FF 数字 1...10 并形成一个单独的对象列表,如下所示。
输入震动规格:
{
"statusCode": "0",
"status": "SUCCESS",
"responseId": "SubsMgmt989579439429",
"operationName": "Query",
"errorMsg": "",
"queryFriendList": [
[
{
"name": "Account ID",
"value": "885580007377"
},
{
"name": "Group Number",
"value": "FN Group 1"
},
{
"name": "FF Number 1",
"value": "251808340081"
},
{
"name": "FF Number 2",
"value": "251808340082"
},
{
"name": "FF Number 3",
"value": "251808340083"
},
{
"name": "FF Number 4",
"value": "251808340084"
},
{
"name": "FF Number 5",
"value": "251808340085"
}
],
[
{
"name": "Account ID",
"value": "56565"
},
{
"name": "Group Number",
"value": "FN Group 2"
},
{
"name": "FF Number 1",
"value": "878222222233"
},
{
"name": "FF Number 2",
"value": "2518083408822"
}
]
]
}
预期输出:
{
"data": [
{
"accountId": "885580007377",
"groupNumber": "FN Group 1",
"detailsList": {
"FFNumber1": "251808340081",
"FFNumber2": "251808340082",
"FFNumber3": "251808340083",
"FFNumber4": "251808340084",
"FFNumber5": "251808340085"
}
},
{
"accountId": "56565",
"groupNumber": "FN Group 2",
"detailsList": {
"FFNumber1": "878222222233",
"FFNumber2": "2518083408822"
}
}
]
}
您可以使用以下移位转换规范:
[
{
"operation": "shift",
"spec": {
"queryFriendList": {
// loop through all the "queryFriendList"
"*": { // indexes of the array
"*": { // indexes of the nested array
"@value": "data[&2].@name" // generate arraywise results
// while separate the objects
// by indexes from the array
// (derived after going 2 levels up)
}
}
}
}
}
]