JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,通常用于前后端之间数据的传输。在 JSON 中,有些字符有特殊含义,需要进行转义,否则可能会导致解析错误或者安全问题。本文将介绍如何对 JSON 进行转义。
JSON 中需要进行转义的字符包括:
* \ 反斜杠 * " 双引号 * ' 单引号 * / 斜杠 * \b 退格 * \f 换页符 * \n 换行符 * \r 回车符 * \t 制表符 * \uXXXX unicode 码点,XXXX 为四位十六进制数
在 JavaScript 中,可以使用 JSON.stringify() 方法将对象转换为 JSON 字符串,并自动进行转义。
const obj = { name: 'Tom', age: 18, content: 'Hello "World"' }; const jsonStr = JSON.stringify(obj); // 结果:{"name":"Tom","age":18,"content":"Hello \"World\""}
如果想手动进行 JSON 字符串的转义,则可以使用第三方库,例如 unescape-js。
const unescape = require('unescape-js'); const jsonString = '{"name":"Tom","content":"Hello \\"World\\""}'; const unescapedStr = unescape(jsonString); // 结果:{"name":"Tom","content":"Hello "World""}
总之,无论是手动还是自动进行 JSON 字符串的转义,都是非常重要的,可以保证数据的正确性和安全性。