모든 가이드
개발자

키 순서의 차이 없이 JSON 비교

키 순서가 바뀌면 값 하나의 변경이 숨겨질 수 있습니다. 배열 순서를 의미 있게 유지하면서 데이터를 비교하세요.

두 JSON 응답이 같은 데이터를 담고 있어도 키 순서를 바꾸는 내보내기 도구 때문에 전혀 다르게 보일 수 있습니다. 양쪽을 서식화하고 객체 키 순서를 무시하면 실제 값 변경을 더 쉽게 찾을 수 있습니다.

텍스트 및 JSON 비교에서 JSON을 선택하고 첫 번째 응답을 원본에, 두 번째 응답을 업데이트됨에 붙여넣은 다음 객체 키 순서 무시를 켜 두세요. 비교는 자동으로 업데이트됩니다.

키 순서 노이즈 제거

이 두 버전을 시도해 보세요:

{"name":"Launch","settings":{"public":true,"retries":3},"steps":["draft","review","publish"]}
{"steps":["draft","review","publish"],"settings":{"retries":3,"public":true},"name":"Launch"}

키가 최상위 수준과 settings 내부 모두에서 이동했습니다. 옵션을 켜면 결과는 차이 없음입니다. 끄면 이러한 이동이 다시 보입니다. JSON 모드는 어느 쪽이든 양쪽을 서식화하므로 들여쓰기만으로는 변경이 생성되지 않습니다.

원본, 키 순서 변경 응답, 정규화 버전을 다운로드할 수 있습니다. 키 정렬은 비교 표시에 영향을 줄 뿐, 붙여넣은 내용을 덮어쓰지 않습니다.

배열은 원래 순서 유지

객체는 이름이 있는 값의 모음이고, 배열은 순서가 있는 시퀀스입니다. 이 구분은 JSON 사양의 일부입니다.

업데이트됨의 배열을 다음으로 바꾸세요:

["review","draft","publish"]

이제 도구는 객체 키 순서를 무시하는 동안에도 변경 사항을 표시합니다. review를 draft보다 앞으로 이동하는 것은 이 워크플로우에서 의미 있는 변경입니다. 배열 순서 변경 응답을 사용하면 더 큰 예제를 편집하지 않고 시도할 수 있습니다.

애플리케이션이 배열을 명시적으로 순서 없는 컬렉션으로 취급하지 않는 한, 차이를 없애기 위해 배열을 정렬하지 마세요. 표시 순서, 우선순위, 처리 순서가 여기에 의존할 수 있습니다.

다음으로 변경된 값 찾기

값 변경 응답을 업데이트됨에 로드하세요. 키는 재정렬되었지만 retries도 3에서 4으로 변경되었습니다. 키 순서 노이즈를 제거하면 남은 차이는 해당 설정입니다.

화면 공간이 충분할 때는 나란히 보기를 사용하세요. 인라인은 제거된 줄과 추가된 줄을 한 열에 유지하므로 휴대폰에서 읽기가 더 쉽습니다. 빼기와 더하기 표시는 색상에만 의존하지 않고 변경을 구분하는 데 도움이 됩니다.

정렬은 문자열 내부의 공백을 제거하지 않습니다. "Launch " 같은 값은 여전히 "Launch"과 다릅니다.

여기서 '차이 없음'의 의미

이것은 서식화된 텍스트 비교이지 JSON 동등성의 보편적 테스트가 아닙니다. 숫자 표기와 문자열 이스케이프를 보존합니다: 1와 1.0은 여전히 다르고, "a"과 "\u0061"도 다릅니다. 많은 애플리케이션이 각 쌍을 같은 값으로 해석하더라도 마찬가지입니다.

중복 키는 값을 조용히 버리지 않고 JSON 비교를 중지합니다. JSON 포맷터를 사용하여 비교 전에 중복을 찾아 해결하세요. 원본 또는 업데이트됨 옆의 오류는 어떤 입력을 확인해야 하는지 알려줍니다.

2026년 10월 12일에 도구에서 사용하는 것과 동일한 JSON 파서와 포맷터로 샘플을 확인했습니다: 정렬을 켜면 재정렬된 키가 일치하고, 변경된 배열, 값, 숫자 표기, 이스케이프 표기는 일치하지 않습니다. 결과 파일에는 여섯 가지 비교와 파일 해시가 기록되어 있습니다.