본문으로 건너뛰기

JSON 비교

JSON Diff

키 순서를 무시하고 두 JSON을 구조로 비교해 추가·삭제·변경된 경로를 알려 줍니다.

두 JSON 문서를 글자가 아니라 구조로 비교합니다. 키 순서나 들여쓰기가 달라진 것은 차이로 치지 않습니다. 결과는 무엇이 달라졌는지 읽을 수 있는 표와, 왼쪽 문서를 오른쪽 문서로 정확히 바꾸는 RFC 6902 패치, 두 가지로 나옵니다.

🔒 브라우저 안에서만 처리jsondiffcompare
배열 비교

두 배열을 먼저 맞춰 놓습니다. 하나를 끼워 넣은 것이 백 건이 아니라 한 건이 됩니다.

왼쪽

오른쪽

사용 방법

  1. 두 문서를 붙여넣습니다

    API 응답 두 개, 설정 파일 두 개, 또는 변경 전후입니다. 비교는 워커에서 돌고 입력하는 대로 갱신됩니다.

  2. 배열을 어떻게 비교할지 고릅니다

    결과가 쓸모 있을지를 정하는 설정입니다. 정렬해서는 두 배열을 먼저 맞춰서, 원소를 하나 끼워 넣은 것이 한 건이 되게 합니다. 위치로는 같은 자리끼리 비교하는데, 순서 자체가 데이터일 때 맞습니다. 키로는 지정한 멤버로 짝짓습니다. 같은 것들을 다른 순서로 주는 두 응답에 쓰는 답입니다.

  3. null을 없는 것으로 볼지 정합니다

    어떤 직렬화기는 빈 필드를 아예 빼고 어떤 것은 `null`을 씁니다. 서로 다른 스택의 출력을 비교하는 중이라면, 이걸 켜는 것만으로 가짜 차이 한 페이지가 사라집니다.

  4. 표를 가져가거나 패치를 가져갑니다

    표는 읽으려고, 패치는 적용하려고 있는 것입니다. 둘 다 경로가 RFC 6901 포인터라서 JSON Patch를 이해하는 어느 도구에나 붙습니다.

자주 묻는 질문

배열에 하나 끼워 넣었는데 왜 백 건으로 나오나요?

배열 비교가 위치로 되어 있어서입니다. 1번과 2번을 비교하게 되니 전부 밀립니다. 두 배열을 먼저 맞추는 정렬해서로 바꾸거나, 원소에 id가 있다면 키로를 쓰세요.

패치를 여기서 적용할 수 있나요?

아니요. 이 페이지는 만들기만 합니다. 다만 패치는 정확합니다. 왼쪽 문서에 적용하면 데이터 모델 수준에서 오른쪽 문서가 그대로 나오고, 그 왕복을 테스트가 변경마다 확인합니다.

두 문서가 서로 관계없다고 나옵니다.

변경이 2만 건을 넘어 비교를 멈췄을 때 나오는 안내입니다. 그 지점부터는 diff가 쓸모 있는 말을 하지 못합니다. 한 문서의 두 판본이 아니라 서로 다른 두 문서를 비교하고 있는 것입니다.

키 순서가 문제가 되는 경우도 있나요?

이 도구에는 아닙니다. JSON 객체에는 순서가 없어서, 키 순서만 다른 두 문서는 같다고 알려 줍니다. 받는 쪽이 키 순서에 의존하고 있다면, 그건 JSON이 약속하지 않은 것에 기대고 있는 것입니다.

이 도구로 이어지는 것

다음 단계

이 도구의 결과를 그대로 받을 수 있는 도구들입니다.