{ }JSONKit.tools

JSON 비교 — 두 파일의 차이 찾기

두 JSON 문서를 텍스트가 아니라 구조로 비교합니다. 키를 재배열하거나 서식을 바꿔도 차이가 나지 않습니다. 나란히, 접이식 트리, 경로 목록 중에서 골라 읽으세요.

왼쪽

오른쪽

차이

–

이 도구에 대하여

행 단위 비교는 JSON에 맞지 않는 도구입니다. 파일을 다시 정렬하거나 키 순서를 바꾸면 데이터는 그대로인데 모든 줄이 붉게 물듭니다. 이 페이지는 두 문서를 파싱해 경로 기준으로 비교하므로 보고되는 차이는 실제 차이뿐입니다. 값이 바뀌었거나, 키가 생겼거나, 키가 사라진 경우입니다. 배열 요소는 인덱스가 아니라 내용으로 짝지어지므로, 긴 목록에서 하나를 지워도 그 뒤가 전부 변한 것처럼 보이지 않고 한 건의 삭제로 나타납니다.

사용 방법

  1. 1두 문서를 왼쪽과 오른쪽 패널에 붙여넣습니다.
  2. 2상황에 맞는 보기로 결과를 읽습니다(나란히, 트리, 목록).
  3. 3변경된 부분만을 켜서 그대로인 곳을 접고, 요약을 복사합니다.

자주 묻는 질문

›키 순서를 바꿨는데 차이가 없는 이유는?

여기서 비교하는 것이 텍스트가 아니라 구조이기 때문입니다. JSON 객체는 정의상 순서가 없으므로 {"a":1,"b":2}와 {"b":2,"a":1}은 같은 데이터를 담고 있어 동일하다고 보고됩니다. 행 단위 비교 도구라면 두 파일을 모두 붉게 칠했을 것입니다.

›배열은 어떻게 비교되나요?

요소는 위치가 아니라 내용으로 짝지어집니다. 그래서 긴 목록에서 하나를 빼면 "그 뒤가 전부 바뀜"이 아니라 한 건의 삭제로 보고됩니다. 삭제와 삽입이 맞물리면 하나의 변경된 요소로 표시됩니다.

›어떤 보기를 써야 하나요?

익숙한 좌우 비교라면 나란히, 문서가 깊어서 그대로인 가지를 접고 싶다면 트리, 변경 내용을 티켓에 붙여야 한다면 목록입니다. 셋 다 같은 비교를 다르게 그린 것입니다.

›변경된 부분만은 무엇을 하나요?

나란히 보기에서는 그대로인 줄이 길게 이어지는 구간을 표식 하나로 접습니다. 코드 리뷰가 하는 방식과 같습니다. 트리에서는 내용이 없는 가지를 숨깁니다. 목록 보기는 애초에 변경된 것만 담겨 있습니다.

›YAML이나 XML 파일도 비교할 수 있나요?

먼저 JSON으로 바꾸세요. YAML → JSON, XML → JSON 페이지가 붙여넣기 한 번으로 해 줍니다. 그 결과를 여기서 비교하면 됩니다. 비교 자체는 형식을 가리지 않습니다.

›어딘가로 업로드되나요?

아닙니다. 두 문서 모두 브라우저에서 파싱하고 비교합니다. 그래서 운영 환경 설정과 스테이징 설정을 마음 놓고 비교할 수 있습니다.