Tool Kumar 工具
JSON 键名排序
粘贴 JSON,即可看到每个对象的键按字母顺序排列,嵌套对象也不例外。数组保持原有顺序,因此数据含义不变,变化的只是键的顺序。
如何使用这个工具
- 粘贴 JSON 或打开文件。
- 在“格式化”视图中查看排序后的输出。“更多选项”菜单中的“键名排序”已开启。
- 复制或下载结果,或者选择“用作输入”(Ctrl+Enter)直接对输入排序。按 Ctrl+Z 可以撤销。
示例演示
每个对象都已排序,嵌套对象也包括在内。owners 列表保持原有顺序;由于键按文本比较,"10" 排在 "2" 之前。
输入
{"version":2,"name":"tool-kumar","10":"ten","2":"two","scripts":{"test":"node --test","build":"next build","dev":"next dev"},"owners":[{"role":"admin","email":"ada@example.com"},{"role":"editor","email":"lin@example.com"}]}输出
{
"10": "ten",
"2": "two",
"name": "tool-kumar",
"owners": [
{
"email": "ada@example.com",
"role": "admin"
},
{
"email": "lin@example.com",
"role": "editor"
}
],
"scripts": {
"build": "next build",
"dev": "next dev",
"test": "node --test"
},
"version": 2
}选项与特殊情况
- 排序是递归的:对象中的对象、数组中的对象也会被排序。
- 数组保持元素顺序。对数组的值排序,或按某个属性对记录排序,是另一种操作。
- 键按文本逐字符比较,所以 "10" 排在 "2" 之前,大写字母排在小写字母之前。
- 值不会改变,数字的每一位都原样保留。
- 要确认只有键的顺序发生了变化,可以在 JSON 对比中开启“忽略键顺序”,比较两个版本。
默认保护隐私
你的文档只保留在这个浏览器中。Tool Kumar 在你的设备上解析、转换并生成下载文件,无需账号,也没有上传步骤。
JSON 键名排序:常见问题
- 如何给 JSON 的键排序?
- 把 JSON 粘贴到这里。输出会把每个对象的键按字母顺序排列,各个层级都是如此。你可以复制结果,或选择“用作输入”替换输入内容。
- 如何按字母顺序排序 JSON 文件?
- 用“打开文件”(Ctrl+O,Mac 上为 ⌘O)打开文件,然后下载排序后的输出。只有对象的键会移动,数组保持原有顺序。
- 排序会改变我的数据吗?
- 不会改变任何值。JSON 对象本身是无序的,所以标准解析器读到的是相同的数据。但依赖键顺序的代码,行为仍可能有所不同。