清JSON格式化校验工作台:基于原生 JavaScript 的浏览器端 JSON 格式化校验工具

本地处理的 JSON 格式化、校验和压缩工具。保留大整数与字符串原文,支持错误行列定位、文件导入、复制和下载。由 AI 辅助开发。

分支1Tags0

清 JSON · 格式化校验工作台

在浏览器本地格式化、校验和压缩 JSON,保留数字与字符串原文,帮助快速检查接口响应和配置文件。

功能

  • 双栏输入和结果,支持 2 空格、4 空格和 Tab 缩进。
  • 严格检查 JSON 语法,显示错误行列,点击定位错误。
  • 支持对象、数组、字符串、数字、布尔值及 null 作为根值。
  • 保留大整数、指数、负零、小数尾零和字符串转义原文,不经浮点转换。
  • 重复属性名给出提示,同时保留全部原始属性。
  • UTF-8 文件导入、复制结果、下载 JSON,支持 Ctrl/⌘ + Enter 快捷键。
  • 响应式布局,单次输入最多 1 MiB,嵌套深度最多 200 层。

运行

需要 Node.js 18 或更新版本,无需安装 npm 依赖。

npm run dev

浏览器打开 http://127.0.0.1:4178。也可将 index.html、styles.css、app.mjs、json-core.mjs、icon.svg、README.md 放到任意静态 HTTP 服务中。ES 模块需要通过 HTTP(S) 打开;不支持直接双击 HTML 文件。

npm test

测试覆盖格式化往返、Unicode、非法 JSON、错误定位、重复键、数值原文以及输入限制。

设计与架构

json-core.mjs 只检查语法并记录词元,不把整个 JSON 转成 JavaScript 对象。格式化只改变词元之间的空白,压缩只移除空白,从而避免大整数精度损失和重复键被覆盖。

app.mjs 管理输入、输出、文件和剪贴板操作;styles.css 提供响应式布局;serve.mjs 仅供本地预览,不接受上传,也不暴露项目中的凭证或其他文件。

隐私与边界

输入内容仅在当前页面内存中处理,不发送到服务端,不写入本地存储,刷新页面会回到示例。剪贴板复制和文件下载只在点击按钮后发生。示例数据均为虚构。

本工具验证 JSON 语法,不验证 JSON Schema 或业务规则。JSON 注释、尾逗号、单引号和 JSON5 不受支持;重复属性名会告警。大整数能在本工具中原样保留,但使用其他软件读取结果时仍需确认数值精度。

由 AI 辅助开发,发布前进行自动测试和浏览器功能验证。

项目介绍

本地处理的 JSON 格式化、校验和压缩工具。保留大整数与字符串原文,支持错误行列定位、文件导入、复制和下载。由 AI 辅助开发。

定制我的领域