我正在努力编写一个JsonPath查询以从以下示例Json中提取特定的密钥。
{
"initial": "somevalue",
"somekey2": {
"inner1": "innerval1",
"inner2": "innerval2"
}
}
例如:
1)我希望提取第一个键,在这种情况下为initial
。使用JsonPath是否可能?
2)获取一个内部密钥,例如inner1
。类似于$."initial"."somekey2"
,但返回仅包含键(inner1
和inner2
)的数组。
答案 0 :(得分:1)
不确定json路径,但是假设您的对象是
a={
"initial": "somevalue",
"somekey2": {
"inner1": "innerval1",
"inner2": "innerval2"
}
};
您可以使用Object.keys(a)获取所有密钥 将提供键数组[“ initial”,“ somekey2”] 那么您可以使用该键来获取其嵌套值
a[Object.keys(a)[1]] // returns {inner1: "innerval1", inner2: "innerval2"}
您可以对所有嵌套元素重复相同的操作
答案 1 :(得分:0)
This这样的问题就解决了。
$.*~
返回[
"initial",
"somekey2"
]
$.somekey2.*~
返回[
"inner1",
"inner2"
]
$.*.*~
。基本上是n阶,$.(n times *).*~