什么是JSON 键排序?
JSON 键排序用于生成稳定、便于比较和审查的对象结构。你可以只整理顶层键,也可以递归排序所有嵌套对象;数组元素顺序始终保持不变。它适合减少代码评审中的无意义差异,但不会把数组当集合处理,也不会改变数据类型。常见使用场景包括:统一配置文件和快照测试中的对象键顺序。;减少 Git diff 中只由键顺序造成的噪音。;整理接口示例,使同类字段更容易查找。页面同时列出输入边界、输出规则和限制,便于在复制结果或投入实际流程前核对格式、语义与安全注意事项。
适用场景
- 统一配置文件和快照测试中的对象键顺序。
- 减少 Git diff 中只由键顺序造成的噪音。
- 整理接口示例,使同类字段更容易查找。
使用方法
- 粘贴合法 JSON。
- 选择是否递归排序嵌套对象。
- 执行排序并复制结果。
- 先使用页面提供的复杂示例验证当前选项和运行方向,再替换为自己的数据。
- 检查输出区、状态提示和限制说明,确认结果符合预期后再复制、下载或继续处理。
可运行示例
工作区中的“示例 1”和“示例 2”按钮会载入对应内容。两个示例覆盖不同结构、方向或边界,可以直接运行并观察输出与状态提示。
示例 1
{"z":1,"profile":{"updated":"2026-08-09","name":"JSONLane","features":[{"status":"ready","id":2},{"id":1,"status":"done"}]},"a":2}示例 2
{"settings":{"theme":"dark","language":"zh-cn","editor":{"wrap":true,"indent":2}},"build":20,"adsense":"reviewed"}输入规则
- 输入必须是合法 JSON。
- 递归选项只影响对象键,不影响数组元素顺序。
- 重复键和不安全整数按页面提示处理。
- 文本输入在运行前按字符计数,当前页面上限为 1,000,000;文件类功能另按页面显示的文件上限执行。
- 键按稳定的英文排序规则排列。
输出规则
- 对象键按稳定的英文排序规则排列。
- 输出使用易读缩进,并保持原数据类型。
- 数组内的对象可递归排序,但数组本身不会重排。
- 输出只反映当前输入、方向和选项;切换模式或修改输入后应重新运行,不应把旧结果当成新结果。
- 不安全整数会被拒绝。
限制与注意事项
- 键按稳定的英文排序规则排列。
- 不安全整数会被拒绝。
- 注释和尾随逗号不是合法 JSON。
数据处理说明
排序通过浏览器中的解析和重新序列化完成,不会向服务器提交文档。关闭或刷新页面后,本工具不会保留本次数据。