input.txt
output.json
把任意文字編碼為 JSON 字串字面值,或反向解碼。

相關

與 Stringify 相關的指南

全部指南 →

什麼是 JSON Stringify?

JSON.stringify() 把一個值轉換為 JSON 字串。當對一個本身就是 JSON 的字串使用它時,會得到一個 JSON 字串字面值 —— 原本的 JSON 被雙引號包起來,內部引號與特殊字元都被跳脫。在把 JSON 嵌入到另一份 JSON 文件中、存進資料庫欄位,或作為 URL 參數傳遞時,常常需要這種形式。

其他語言用不同的名稱稱呼同一件事:Python 的 json.dumps(也常被搜尋為 json dumps python json dumps in pythonpython json dumppython dict to json python pretty print dictpython pretty print json python print nice json,或透過 python pprint / pprint python),Ruby 的 JSON.generate,Go 的 json.Marshal,Java 的 org.json 與 Jackson,.NET 的 Newtonsoft JSON(Newtonsoft.Json),以及 PHP 的 json_encode,都會產生同一類輸出 —— 把一個 json object as string(也常被搜尋為 json to json stringstringify json)。反向操作是 JSON.parsejson.loads 等等 —— 若輸入可能格式不正確,可在 JSON 校驗工具JSON Fix 工具中處理。

範例

輸入:

{"name": "Ada", "active": true}

Stringify 後的輸出:

"{\"name\": \"Ada\", \"active\": true}"

點擊 Unstringify 可以反向 —— 在你收到一份被重複編碼的 JSON 字串、想取出裡面真實值時非常有用。

FAQ

怎樣反向解開 stringify(解碼 JSON 字串字面值)?

點擊 Unstringify,或直接對那個值執行一次 JSON.parse。如果你收到的是一個以跳脫引號開頭的雙重編碼字串,先 parse 一次取回內部 JSON 字串,再 parse 一次拿到真正的值。

這和「json to string」、「json unescape」是同一件事嗎?

是的。json to string 指的是把一個 JSON 值轉成字串字面值形式,這正是 Stringify 所做的事。json unescape / unescape json 是反向 —— 點 Unstringify 就能去掉跳脫序列,還原為原始 JSON。