# JsonGet - 脚本和图表函数

JsonGet() 返回 JSON（JavaScript 对象表示法）数据字符串的路径。数据必须是有效的 JSON，但可以包含额外的空格或换行符。

语法：

value JsonGet(json, path)

返回数据类型： 双

参数

| 参数 | 描述 |
| --- | --- |
| json | 包含 JSON 数据的字符串。 |
| path | 必须根据 [RFC 6901](https://datatracker.ietf.org/doc/html/rfc6901) 指定路径。这将允许在 JSON 数据中查找属性，而无需使用复杂的子字符串或索引函数。 |

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/JsonGet.htm)

#### 示例：有效的 JSON 和路径

| 示例 | 结果 |
| --- | --- |
| `JsonGet('{"a":{"foo":"bar"},"b":[123,"abc","ABC"]}', '')` | 返回 '{"a":{"foo":"bar"},"b":[123,"abc","ABC"]}' |
| `JsonGet('{"a":{"foo":"bar"},"b":[123,"abc","ABC"]}', '/a')` | 返回 '{"foo":"bar"}' |
| `JsonGet('{"a":{"foo":"bar"},"b":[123,"abc","ABC"]}', '/a/foo')` | 返回 '"bar"' |
| `JsonGet('{"a":{"foo":"bar"},"b":[123,"abc","ABC"]}', '/b')` | 返回 '[123,"abc","ABC"]' |
| `JsonGet('{"a":{"foo":"bar"},"b":[123,"abc","ABC"]}', '/b/0')` | 返回 '123' |
| `JsonGet('{"a":{"foo":"bar"},"b":[123,"abc","ABC"]}', '/b/1')` | 返回 '"abc"' |
| `JsonGet('{"a":{"foo":"bar"},"b":[123,"abc","ABC"]}', '/b/2')` | 返回 '"ABC"' |

[](https://help.qlik.com/en-US/sense/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/JsonGet.htm)

#### 示例：有效的 JSON 或路径

| 示例 | 结果 | 描述 |
| --- | --- | --- |
| `JsonGet('{"a":"b"}','/b')` | 返回 null | 路径未指向 JSON 数据的有效部分。 |
| `JsonGet('{"a"}','/a')` | 返回 null | JSON 数据不是有效的 JSON（成员“a”没有值）。 |

另请参阅：

* [IsJson - 脚本和图表函数](https://help.qlik.com/zh-CN/sense/November2024/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/IsJson.htm)

* [JsonSet - 脚本和图表函数](https://help.qlik.com/zh-CN/sense/November2024/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/JsonSet.htm)