将文本编码为 JSON 字符串字面量,或将被双重编码的 JSON 字符串解码回纯文本。
相关
LLMs frequently return JSON wrapped in ```json fences, with single quotes, Python literals, or unquoted keys. Repair the syntax, validate strictly, then derive TypeScript types from the cleaned output.
对 JSON 进行 stringify 时,会用双引号包裹并转义内部引号与特殊字符,得到可安全嵌入到其他位置的 JSON 字符串字面量。
JSON 字符串与对象键必须使用双引号。单引号值常见于 JavaScript 片段、类 Python 输出以及 LLM 响应中。
JSON.stringify() 把一个值转换为 JSON 字符串。当对一个本身就是 JSON 的字符串使用它时,会得到一个 JSON 字符串字面值 —— 原本的 JSON 被双引号包起来,内部引号和特殊字符都被转义。在把 JSON 嵌入到另一份 JSON 文档里、存进数据库字段,或者作为 URL 参数传递时,常常需要这种形式。
其他语言用不同的名字称呼同一件事:Python 的 json.dumps(也常被搜索为 json dumps python、 json dumps in python、python json dump、python dict to json、 python pretty print dict、python 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 string 或 stringify json)。反向操作是JSON.parse、json.loads 等等 —— 如果输入可能格式不规范,可以在 JSON 校验工具 和 JSON Fix 工具里处理。
输入:
{"name": "Ada", "active": true}Stringify 后的输出:
"{\"name\": \"Ada\", \"active\": true}"点击 Unstringify 可以反向 —— 在你收到一份被双重编码的 JSON 字符串、想取出里面的真实值时很有用。
点击 Unstringify,或者直接对那个值跑一次 JSON.parse。如果你收到的是一个以转义引号开头的双重编码字符串,先 parse 一次取回内部 JSON 字符串,再 parse 一次拿到真正的值。
是的。json to string 指的是把一个 JSON 值转成字符串字面值形式,这恰恰就是 Stringify 做的事。json unescape / unescape json 是反向 —— 点 Unstringify 就能去掉转义序列,还原回原始 JSON。