在开发过程中,我们经常需要处理 JSON 数据,尤其是要验证 JSON 数据是否合法,但是很多工具只是简单返回一句"JSON 格式正确"或"JSON 格式错误",没有指出具体的错误位置,让我或大多数使用者非常苦恼。
所以我就想自己开发一个工具,可以让我更方便地验证 JSON 数据是否合法,并指出具体的错误位置。
本来我是想使用 Monaco Editor 来实现这个工具的,但是 Monaco Editor 的体积太大了,我担心会影响到浏览器的性能,毕竟我们只需要简单的验证和展示。
所以我就想使用 textarea 来实现这个工具,但是 textarea 本身又过于简陋了,我担心会影响到使用者的体验,最后我就在textarea的基础上增加一些行号,状态栏以及高亮之类的功能。
JSON格式化和压缩使用的是js原生API,没有依赖任何第三方库,所以工具页面加载速度非常快。
这个工具最难的地方就是如何定位最具体的错误位置, 这也是这个工具的核心功能。最终我选择了使用正则表达式来实现这个功能,正则表达式虽然灵活,但是实现起来非常复杂,我花了很长时间来调试。
虽然还有没有覆盖到的错误场景,但大部分例如缺少逗号,空值检测, 大括号闭合等错误场景都能被检测出来。希望这个工具能帮助到你。^_^
A: 不会。所有的 JSON 格式化处理都在你的浏览器本地完成,不会上传到任何服务器。
JSON: JavaScript Object Notation, 一种轻量级的数据交换格式
JSON字符串: 用双引号包裹的JSON数据
探索更多实用工具,提升工作效率