JSON이 뭔가요?
웹사이트나 앱을 쓸 때 눈에 보이진 않지만, 서버와 앱 사이에는 끊임없이 데이터가 오갑니다. 날씨 앱이 기온을 보여줄 때, 쇼핑몰이 상품 목록을 불러올 때, 이 모든 데이터가 JSON 형식으로 전달되는 경우가 많습니다.
JSON은 JavaScript Object Notation의 약자입니다. 항목과 값을 쌍으로 묶은 목록으로, 한 사람의 정보를 표현하면 이름은 “홍길동”이고, 나이는 30이고, 취미는 [“독서”, “등산”]이라는 식입니다.
왜 포매터가 필요한가요?
API나 시스템에서 받아온 JSON 데이터는 대부분 한 줄에 모든 내용이 빽빽하게 들어차 있습니다. 전송 크기를 줄이기 위해 공백을 제거하기 때문입니다.
JSON 포매터는 이 압축된 데이터를 들여쓰기를 추가하고 줄을 나눠서 구조를 한눈에 알아볼 수 있게 만듭니다. 반대로 잘 정리된 JSON을 다시 한 줄로 압축하는 기능도 있습니다.
자주 만나는 JSON 오류
JSON은 엄격한 규칙을 따릅니다. 조금만 틀려도 오류가 납니다.
가장 흔한 실수는 마지막 항목 뒤에 쉼표를 남기는 것입니다. JavaScript에서는 허용되지만 JSON에서는 허용되지 않습니다. 두 번째로 흔한 실수는 큰따옴표 대신 작은따옴표를 쓰는 것입니다. JSON에서 문자열은 반드시 큰따옴표로 감싸야 합니다. 세 번째는 주석을 추가하는 것입니다. JSON은 주석을 지원하지 않습니다.
Validate 버튼을 누르면 입력한 JSON이 올바른 형식인지 확인하고, 오류가 있다면 어떤 문제인지 알려줍니다.
사용 방법
왼쪽 입력창에 JSON 데이터를 붙여 넣습니다. Format 버튼을 누르면 들여쓰기가 정리된 형태로, Minify 버튼을 누르면 한 줄로 압축된 형태로 결과가 나옵니다. Validate 버튼은 내용은 바꾸지 않고 형식이 올바른지만 확인합니다.
들여쓰기 칸 수는 2칸과 4칸 중 선택할 수 있습니다. Copy 버튼으로 결과를 바로 복사할 수 있습니다.
자주 묻는 질문
JSON과 XML의 차이가 뭔가요? 둘 다 데이터를 구조화하는 형식이지만, JSON이 훨씬 가볍고 읽기 쉽습니다. XML은 시작 태그와 끝 태그를 모두 써야 해서 같은 데이터를 표현할 때 훨씬 길어집니다. 요즘 대부분의 웹 API는 JSON을 씁니다.
크기 제한이 있나요? 브라우저의 메모리 한도 내에서 처리됩니다. 일반적인 용도라면 몇 메가바이트 크기도 문제없습니다.
내 데이터가 서버에 저장되나요? 아닙니다. 모든 처리는 브라우저 안에서만 이루어집니다. 입력한 데이터는 외부로 전송되지 않습니다.