工具
ZH

JSON 字符串转义与反转义

将任意文本转换为有效的 JSON 字符串:引号、反斜杠、换行符和制表符都会自动转义;也可以把已转义的字符串解码为可读文本。另外两种模式可将 JSON 文档字符串化,或将其解析还原。

隐私保护:您的数据仅在浏览器中处理,绝不会被上传。

如何转义 JSON 字符串

  1. 选择模式:转义、反转义、JSON 转字符串或解析字符串化 JSON。
  2. 输入或粘贴内容,结果会立即显示。转义时,可以选择是否在两侧加引号,以及是否将非 ASCII 字符写成 \uXXXX。
  3. 复制结果,或点击互换反向执行操作,检验能否完整还原。

JSON 转义字符一览

字符转义后
双引号 "\"
反斜杠 \\\
换行符(LF)\n
回车符\r
制表符\t
退格符、换页符\b、\f
其他控制字符 U+0000–U+001F\u0000 … \u001f
任意字符(可选)\uXXXX,例如 é → \u00e9,😀 → \ud83d\ude00
斜杠 /(可选)\/

在 JSON 中,单引号永远不需要转义,因为 JSON 字符串始终使用双引号。

字符串化的 JSON

字符串化的 JSON 是指存放在 JSON 字符串中的 JSON 文档,例如 API 字段 "payload": "{\"id\":7}",或保存在数据库字段、环境变量、日志行中的 JSON。JSON 转字符串可将文档生成这样的字符串;解析字符串化 JSON则能将其解包(即使被字符串化了两次也可以),并格式化结果。

常见问题

JSON 中哪些字符必须转义?

只有双引号、反斜杠以及 U+0000 到 U+001F 的控制字符(如换行符和制表符)。其他所有字符,包括 é、“中”这样的汉字以及 emoji 表情,都可以在 UTF-8 编码的 JSON 中原样出现。

为什么中文显示成了 \u4e2d\u6587 这样的编码?

有些程序会把每个非 ASCII 字符(包括中文)都写成 \uXXXX 转义形式。两种写法含义完全相同;使用“反转义”即可将转义序列还原为可读文本。

转义和字符串化有什么区别?

转义是将任意文本转换为 JSON 字符串字面量。字符串化则会先检查输入是否为有效的 JSON,将其压缩后再转义,因此结果是一个包含 JSON 文档的字符串。

可以对不带外层引号的字符串进行反转义吗?

可以。无论内容是否带有两侧的引号都可以直接粘贴;零散的未转义引号和真实的换行符也能被正确处理。