재귀 정렬
중첩 객체 안의 키도 이름으로 정렬됩니다. 깊은 설정을 한 번에 처리해 층마다 손으로 정리할 필요가 없습니다.
정렬 규칙은 키 이름 사전순이라 언어·도구를 넘나들어도 안정된 출력을 얻기 쉽습니다.
다음으로도 #data={"name":"Ada"} 또는 #url=... 데이터를 넣을 수 있으며, 읽은 뒤 주소 표시줄에서 지워집니다.
필드 이름으로 객체 Key를 정렬해 두 번 내보낸 JSON을 비교하기 쉽게 합니다. 많은 직렬화 구현은 Key 순서를 보장하지 않아, 정렬 후 Diff가 훨씬 깨끗합니다. 정렬 결과를 Git에 넣어 의미 없는 키 순서 흔들림을 줄일 수도 있습니다.
중첩 객체 안의 키도 이름으로 정렬됩니다. 깊은 설정을 한 번에 처리해 층마다 손으로 정리할 필요가 없습니다.
정렬 규칙은 키 이름 사전순이라 언어·도구를 넘나들어도 안정된 출력을 얻기 쉽습니다.
목록 순서는 보통 업무 의미가 있어 기본은 원래 순서를 유지합니다. 타임라인, 단계, 순위표 같은 배열은 값 기준으로 정렬되지 않습니다.
객체 키만 정규화하고 목록은 건드리지 않으려면, 포맷에서 슬쩍 켜는 것보다 이 페이지가 더 분명합니다.
먼저 정렬한 뒤 비교하면 「사실 키 순서만 다른」 잡음을 줄입니다. 양쪽을 정렬한 뒤 Diff 페이지에 붙여넣으세요.
포맷 페이지에도 「Key 정렬」 옵션이 있어 효과는 비슷하고, 이 페이지는 그 한 가지에 집중합니다.
{
"z": 1,
"a": { "n": 2, "m": 1 },
"m": 3
}
{
"a": {
"m": 1,
"n": 2
},
"m": 3,
"z": 1
}
객체의 키는 이름으로 정렬되고, 문자열 값은 정렬되지 않습니다.
같은 입력을 여러 번 정렬하면 같은 키 순서가 나와 Git에 넣기 좋습니다.
배열 원소는 재정렬하지 않습니다. 객체 키만 정렬됩니다.
JavaScript 기본 문자열 비교를 따릅니다. 한글과 영문이 섞이면 순서가 가나다 습관과 완전히 같지 않을 수 있으니 팀에서 통일하면 됩니다.
정렬은 「객체 키 정규화」를 위한 것이며 범용 데이터 정리가 아닙니다. 빈 값 제거와 마스킹은 정리 페이지를 쓰세요.