在线工具

JSON格式化常见报错原因与解决办法

JSON是前后端开发最常用的数据交换格式,接口调试、日志查看、配置文件编辑,几乎天天接触。很多开发者复制一串JSON字符串粘贴到格式化工具,直接抛出报错,提示格式无效,面对一长串报错信息无从下手。其实绝大多数JSON格式化报错,都集中在几类高频错误,不需要深厚开发功底也可以排查。

第一种最高频错误:逗号错误。对象最后一个键值对末尾多写逗号,数组最后一项末尾多余逗号。JavaScript对象允许这种写法,但是标准JSON语法严格禁止。复制后端打印的JS对象,直接粘贴格式化,大概率踩这个坑。肉眼很难看出来,建议逐行检查每一行末尾符号。

第二种:引号使用错误。JSON标准只允许双引号,单引号、反引号全部非法。很多前端调试打印出来的数据使用单引号包裹键名,粘贴进去直接报错。把所有单引号批量替换成双引号,问题即可解决。还有一类情况,字符串内部没有转义双引号,字符串内部出现"符号,需要添加转义符\。

第三种:注释符号。JSON本身不支持//单行注释、/* */多行注释。很多配置文件习惯写注释,粘贴到格式化工具直接报错。如果来源是带注释的JSON5、JS配置,需要手动删除全部注释内容,再进行格式化。

第四种:特殊字符、换行、不可见字符。复制日志、接口返回报文,经常携带看不见的换行符、零宽空格,肉眼看不见,但是会破坏JSON语法。从日志框复制内容的时候,尽量不要直接复制HTML渲染后的文本,优先复制原始响应报文。

第五种:数据类型错误。键名没有加引号,数字写中文数字,值出现undefined、NaN,JSON不支持这两种特殊值,需要替换为null。

很多人习惯手写JSON,手写非常容易出现语法漏洞,使用在线JSON格式化工具可以一键校验语法,自动排版缩进。

遇到JSON排版混乱、语法报错,可以使用[JSON格式化工具],一键格式化、语法校验,快速定位错误位置,提升接口调试效率。