# JsonSet - 指令碼與圖表函數

JsonSet() 修改包含 JSON (JavaScript 物件標記法) 資料的字串。這可以透過路徑指定的新位置設定或插入 JSON 值。資料必須為有效的 JSON，但可以包含額外的空格或新行。

資訊備註您可以使用 JsonSet 新增任意數量的名稱值組。

語法：

value JsonSet(json, path, value)

傳回的資料類型： 雙值

引數

| 引數 | 描述 |
| --- | --- |
| json | 字串包含 JSON 資料。 |
| path | 必須根據 [RFC 6901](https://datatracker.ietf.org/doc/html/rfc6901) 指定路徑。這允許建置 JSON 資料的內部屬性，而不必使用複雜的子字串或索引函數和串連。 |
| value | 使用 JSON 格式的新字串值。 |

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

#### 範例：有效的 JSON、路徑和值

| 範例 | 結果 |
| --- | --- |
| `JsonSet('{}','/a','"b"')` | 傳回 '{"a":"b"}' |
| `JsonSet('[]','/0','"x"')` | 傳回 '["x"]' |
| `JsonSet('"abc"','','123')` | 傳回 123 |

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

#### 範例：無效的 JSON、路徑或值

| 範例 | 結果 | 描述 |
| --- | --- | --- |
| `JsonSet('"abc"','/x','123')` | 傳回 null | 路徑沒有指向 JSON 資料的有效部分。 |
| `JsonSet('{"a":{"b":"c"}}','a/b','"x"')` | 傳回 null | 路徑無效。 |
| `JsonSet('{"a":"b"}','/a','abc')` | 傳回 null | 值不是有效的 JSON。必須以引號括住字串。 |

另請參見：

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

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