실용 가이드 · 웹과 코드
JSON 키 순서: 객체와 배열 비교
속성 순서와 배열 순서를 구분하고 차이 경로, 자료형, 숫자와 중복 키를 확인합니다。
작성 Puffinmint · 업데이트
순서 없는 객체와 순서 있는 배열
JSON 객체는 속성의 모음이고 배열은 순서가 있는 열입니다. 속성 순서 변경은 동등할 수 있지만 배열 요소 교환은 데이터를 바꿉니다.
타입과 JSON Pointer 경로 비교하기
자료형부터 비교하세요. 숫자 문자열은 숫자가 아니고 null은 속성 부재와 다릅니다. JSON Pointer는 이름의 슬래시와 물결표를 이스케이프해 변경 위치를 표시합니다.
-
입력값
{"price":10,"tags":["a","b"]} {"tags":["a","c"],"price":10} -
계산 과정
방법 선택과 적용
-
결과
/tags/1: "b" → "c"
이 단계 직접 해보기
JSON 비교: 구조적 차이 확인
이 가이드에서 예제를 불러와 도구를 실행하고 입력을 바꾸며 결과를 비교하세요. 두 번째 실험은 다른 조건을 확인합니다.
재현 가능한 예제
price와 tags 속성의 순서만 바뀌면 동등합니다. 배열 둘째 요소가 b에서 c로 바뀌면 /tags/1이 차이 위치입니다. 인덱스는 0부터 시작합니다.
속성 순서만 바꾸기
두 번째 예제는 가격과 배열을 유지하고 속성 순서만 바꿉니다. 차이는 0이어야 합니다. 그다음 배열 요소를 뒤집으면 인덱스 경로에 차이가 나타납니다.
결과
값을 입력하면 결과를 확인할 수 있습니다.
/tags/1 변경 찾기
price와 tags 속성의 순서만 바뀌면 동등합니다. 배열 둘째 요소가 b에서 c로 바뀌면 /tags/1이 차이 위치입니다. 인덱스는 0부터 시작합니다.
사용 사례
- 입력값
{"price":10,"tags":["a","b"]} {"tags":["a","c"],"price":10}- 결과
/tags/1: "b" → "c"
중복 키와 정확한 숫자
중복 키는 파서마다 다르게 처리하므로 먼저 해결하세요. 숫자는 이진 반올림 없이 비교하고 1과 1.0은 동등합니다. 스키마 검사, ID별 연결과 배열 재정렬은 하지 않습니다.
실제 사례를 측정한 값이 아닌 예제 입력값입니다. 실제 도구와 같은 계산 엔진을 사용합니다. 결과를 가이드의 계산 과정과 비교한 뒤 확인 항목을 체크하세요.
| 항목 | 값 |
|---|---|
| 이 도구의 제한은 무엇인가요? | JSON당 100,000자, 60단계, 값 10,000개 이하입니다. 차이는 500개까지 표시하며 숫자는 1,000자리와 정규화 지수 ±10,000 안에서 정확히 비교합니다。 |
| 처리 및 개인정보 | 입력값과 결과는 브라우저에서 처리되며 서버로 전송되지 않습니다. 집계 통계가 활성화된 경우 도구 이름과 처리 성공 여부만 기록하며 내용은 기록하지 않습니다. |