JSON仅支持6种标准转义序列,开发者应始终使用JSON.parse()/JSON.stringify()处理数据,避免手动拼接字符串,确保输入合法并校验Unicode及不可见字符。

JSON 本身只支持有限的转义序列,JavaScript 中处理 JSON 数据时的“特殊字符问题”,其实多数不是 JSON 的错,而是开发者在字符串拼接、手动构造 JSON、或未正确使用 JSON.parse()/JSON.stringify() 导致的。关键在于:**永远用标准 API 处理 JSON,避免手写或字符串拼接**。
JSON 合法转义只有 6 种
JSON 规范(RFC 8259)明确允许的转义序列只有:
-
"(双引号) -
\(反斜杠) -
/(正斜杠,可选,主要用于避免冲突) -
(退格) -
(换页) -
、、(换行、回车、制表符)
像 u00e9(Unicode)是合法的,但 、