Tool Kumar 도구
JSON 비교
원본 문서와 수정된 문서를 붙여넣으면 무엇이 바뀌었는지 보여 줍니다. ‘비교’ 보기는 두 편집기를 나란히 맞춰 두고 추가, 삭제, 수정된 부분을 표시합니다.
도구 사용 방법
- 첫 번째 창에 원본 JSON을 붙여넣습니다.
- 두 번째 창에 수정된 JSON을 붙여넣습니다.
- ‘변경 사항’ 목록이나 줄 단위 ‘diff’를 검토한 뒤, JSON Patch나 두 문서 중 원하는 쪽을 복사합니다.
사용 예제
키 순서는 서로 다르지만, ‘키 순서 무시’(기본값은 켜짐)가 켜져 있으므로 차이로 보고되지 않습니다. 무시할 경로에 $.meta.updatedAt을 넣으면 role 값 변경과 추가된 태그, 이렇게 두 가지 변경만 남습니다. ‘JSON Patch 복사’를 사용하면 다음과 같은 RFC 6902 패치를 얻습니다.
입력 · ignoring $.meta.updatedAt
Original:
{"id":7,"name":"Ada","role":"admin","tags":["beta"],"meta":{"updatedAt":"2026-10-14T09:00:00Z"}}
Modified:
{"name":"Ada","id":7,"role":"editor","tags":["beta","staff"],"meta":{"updatedAt":"2026-10-15T08:30:00Z"}}출력
[
{
"op": "replace",
"path": "/role",
"value": "editor"
},
{
"op": "add",
"path": "/tags/1",
"value": "staff"
}
]옵션 및 예외 사항
- ‘변경 사항’은 구조적 차이를 JSON 경로별로 나열합니다. ‘diff’는 두 문서를 같은 방식으로 포맷한 뒤 줄 단위로 비교하므로, 들여쓰기나 공백 차이는 변경으로 표시되지 않습니다.
- ‘키 순서 무시’는 기본값이 켜짐이므로, 키는 같고 순서만 다른 객체는 같은 것으로 취급합니다. 키 순서 변경까지 확인하려면 이 옵션을 끕니다.
- ‘변경 사항’에서 ‘배열 순서 무시’는 배열을 순서 없는 모음으로 비교하고, ‘대소문자 무시’는 문자열을 대소문자 구분 없이 비교합니다. ‘diff’에서는 ‘키 순서 무시’만 지원합니다.
- 무시할 경로를 지정하면 계속 바뀌는 잡음성 필드를 건너뜁니다. $.meta.updatedAt은 정확히 하나의 경로이고, $.items[*].ts는 모든 항목에 일치하며, updatedAt처럼 키 이름만 쓰면 어떤 깊이에서든 일치합니다.
- ‘JSON Patch 복사’는 원본을 수정본으로 바꾸는 RFC 6902 패치 형식으로 차이를 기록합니다. 무시할 경로와 키 순서만 다른 변경은 포함되지 않습니다.
- 숫자는 값으로 비교하므로 1.0과 1은 같고, 큰 정수도 모든 자릿수가 유지됩니다. id, _id, uuid, key 또는 name 중 하나의 값이 고유한 객체 배열은 그 값으로 항목을 대응시킵니다.
개인정보 보호 기본 적용
문서는 이 브라우저에만 보관됩니다. Tool Kumar는 기기 안에서 파싱, 변환, 다운로드 파일 생성을 처리하며 계정이나 업로드 과정이 필요하지 않습니다.
JSON 비교 자주 묻는 질문
- JSON 파일 두 개를 비교할 수 있나요?
- 네. 비교 창마다 파일을 하나씩 열거나 두 문서를 붙여넣으면 됩니다.
- 비교할 때 파일이 서버로 전송되나요?
- 아니요. 파싱과 비교는 브라우저 안에서 이루어집니다.
- 중첩 배열도 비교할 수 있나요?
- 네. 중첩된 객체와 배열을 요소별로 비교하므로, 배열에 요소 하나가 삽입되어도 나머지가 변경된 것으로 표시되지 않습니다.
- 계속 바뀌는 타임스탬프는 어떻게 무시하나요?
- ‘변경 사항’ 보기의 ‘무시할 경로(쉼표로 구분)’ 입력란에 $.meta.updatedAt 같은 경로를 입력합니다. 경로가 여러 개면 쉼표로 구분하고, [*]는 모든 배열 인덱스에 일치합니다.
- 차이점을 JSON Patch로 내보낼 수 있나요?
- 네. ‘JSON Patch 복사’는 원본 문서를 수정본으로 바꾸는 RFC 6902 add, remove, replace 연산을 복사합니다.