本文介绍了如何使用jsonPath或替代方法从JSON结构的childNode中找到parentNode?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我需要从JSON结构的childNode中找出一个parentNode.例如,我需要知道"view_id": "f"
的父级.
I need to find out a parentNode from childNode in a JSON structure. For example I need to know what is the parent for "view_id": "f"
.
我正在评估 jsonPath ,但找不到父运算符.
I am evaluating jsonPath but I cannot find a parent operator.
我想现在:
- jsonPath是否具有父运算符或具有可以类似地使用的替代运算符?
- 是否没有其他替代库或解决方案?
您可以在此处测试JSON结构: http://jsonpath.curiousconcept.com/
You can test JSON structure here: http://jsonpath.curiousconcept.com/
[
{
"view_id": "a",
"views": [
{
"view_id": "b",
"views": [
{
"view_id": "c"
},
{
"view_id": "d"
}
]
},
{
"view_id": "e",
"views": [
{
"view_id": "f"
},
{
"view_id": "g"
}
]
},
{
"view_id": "h"
}
]
},
{
"view_id": "i",
"views": [
{
"view_id": "l",
"views": [
{
"view_id": "m",
"views": [
{
"view_id": "n"
},
{
"view_id": "o"
}
]
}
]
},
{
"view_id": "p"
}
]
},
{
"view_id": "q"
}
]
推荐答案
我发现此规范问题有两种可能的解决方案,据我了解,jsonPath
不允许我为节点找到parent
:
I found two possible solutions to this specif problem as for my understanding jsonPath
does not allow me to find the parent
for a node:
解决方案A:
- 向JSON中的每个节点添加属性"parent_id",然后使用jsonPath查询JSON.
解决方案B:
- 不使用jsonPath来执行此任务,而是将JSON在内存中的rap表示形式保存为平面"数组,在填充数组时,我可以向每个节点添加一个"parent_id",以查找我始终会找到的子节点需要了解其父级(如评论所建议).任何搜索都是使用JS在平面"数组上完成的.
这篇关于如何使用jsonPath或替代方法从JSON结构的childNode中找到parentNode?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!