Javascript 具有嵌套数组的对象数组的Jsonpath
我正在尝试为以下对象编写jsonpath:Javascript 具有嵌套数组的对象数组的Jsonpath,javascript,arrays,json,jsonpath,Javascript,Arrays,Json,Jsonpath,我正在尝试为以下对象编写jsonpath: { "ParentArray": [ { "ChildArray": [ { "ChildArrayObjectKey": "ChildArrayObjectValue1" }, { "ChildArrayObjectKey": "
{
"ParentArray": [
{
"ChildArray": [
{
"ChildArrayObjectKey": "ChildArrayObjectValue1"
},
{
"ChildArrayObjectKey": "ChildArrayObjectValue2"
}
]
},
{
"ChildArray": [
{
"ChildArrayObjectKey": "ChildArrayObjectValue3"
},
{
"ChildArrayObjectKey": "ChildArrayObjectValue4"
}
]
}
]
}
这将从ParentArray中提取对象。我正在查找一个对象,该对象的ChildArray中包含值“ChildArrayObjectValue3”。我认为可行的解决方案是:
$.ParentArray[?(@.ChildArray[?(@.ChildArrayObjectKey === 'ChildArrayObjectValue3')])]
但不幸的是,它没有提供任何结果。我想摘录的是:
{
"ChildArray": [
{
"ChildArrayObjectKey": "ChildArrayObjectValue3"
},
{
"ChildArrayObjectKey": "ChildArrayObjectValue4"
}
]
}
请尝试以下方法:$.ParentArray..*[?(@.ChildArrayObjectKey=='ChildArrayObjectValue3')]Thx以获得解决方案,但不幸的是,它没有得到我需要的。您的表达式从ChildArray数组中获取对象,但我需要的不是根据ChildArray中的值从ParentArray中提取对象。我用一个示例编辑了这个问题,我期望您得到的解决方案是什么不幸的是,最后我只是在代码中使用Javascript实现了这一点。