jolt - jolt - 将键从嵌套对象复制或移动到顶层
问题描述
我正在寻找一种将键从嵌套对象复制或移动到顶层的方法
输入:
{
"id": "123",
"name": "foo",
"details": {
"orderNumber": "456789",
"addr": "N st 124",
"date": "2021-01-01"
}
}
所需的输出:
{
"id": "123",
"name": "foo",
"orderNumber": "456789",
"details": {
"orderNumber": "456789",
"addr": "N st 124",
"date": "2021-01-01"
}
}
或者理想情况下
{
"id": "123",
"name": "foo",
"orderNumber": "456789",
"details": {
"addr": "N st 124",
"date": "2021-01-01"
}
}
我能得到的最接近的是低于转换,但它将对象转换为值数组
[
{
"operation": "shift",
"spec": {
"id": "id",
"name": "name",
"details": {
"orderNumber": "orderNumber",
"*": "details"
}
}
}
]
解决方案
你是如此接近结果,只需要一个轻微的变化(添加一个&符号),例如
[
{
"operation": "shift",
"spec": {
"id": "id",
"name": "name",
"details": {
"orderNumber": "orderNumber",
"*": "&1.&"
}
}
}
]
在这种情况下,键会不断出现。
推荐阅读
- kotlin - 尽管 lambda 与签名匹配,但 Kotlin 仍抱怨类型不正确
- excel - 如何使用 vb.net 启用 excel 的所有宏
- azure - 使用 Microsoft Graph API 在 OneDrive 中查询文件:无法检索用户的 mysite URL
- sql-server - 聚合表数据 - 分组集?其他?
- javascript - Node.js - 如何读取/写入更改其前端元数据的降价文件?
- ruby - SimpleDelegator 的 Ruby 陷阱
- python - Tkinter stringVar() 用于按钮文本,如何使用设置文本?
- php - 上传多个文件时出现“调用数组上的成员函数 getClientOriginalName()”错误
- reactjs - useCallback 和 IntersectionObserver 的回调在获取新值之前仍然获取 Redux 状态的旧值
- java - 国家和访客模式