# 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-TW/sense/November2024/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/IsJson.htm)

* [JsonSet - 指令碼與圖表函數](https://help.qlik.com/zh-TW/sense/November2024/Subsystems/Hub/Content/Sense_Hub/Scripting/StringFunctions/JsonSet.htm)