JSON(JavaScript Object Notation)은 데이터를 키와 값의 쌍으로 표현하는 가벼운 텍스트 형식입니다. 이름에 JavaScript가 들어 있지만 특정 언어에 묶여 있지 않으며, 웹 API 응답, 설정 파일, 브라우저 저장소 등 거의 모든 곳에서 데이터를 주고받는 표준으로 쓰입니다.
JSON이란 무엇인가
API 응답부터 설정 파일까지, 어디서나 마주치는 데이터 형식의 기본을 정리합니다.
기본 구조
JSON은 중괄호 { }로 감싼 객체와 대괄호 [ ]로 감싼 배열이라는 두 가지 틀을 조합해 데이터를 표현합니다. 객체는 "키": 값 쌍을 쉼표로 나열하며, 문자열과 키는 반드시 큰따옴표로 감싸야 합니다. 값에는 문자열, 숫자, true/false, null, 다른 객체나 배열이 올 수 있습니다.
자주 하는 실수
작은따옴표로 문자열을 감싸거나, 배열·객체의 마지막 항목 뒤에 쉼표를 남기거나(후행 쉼표), 여는 중괄호나 대괄호에 대응하는 닫는 기호를 빠뜨리는 것이 가장 흔한 오류입니다. 자바스크립트 객체 리터럴에서는 키에 따옴표를 생략할 수 있지만, 표준 JSON에서는 반드시 큰따옴표가 필요합니다.
포맷터가 도움이 되는 이유
API 응답이나 로그에서 복사한 JSON은 대부분 한 줄로 압축되어 있어 구조를 눈으로 파악하기 어렵습니다. JSON 포맷터는 이를 들여쓰기와 함께 펼쳐 보여주고, 위에서 설명한 실수들을 가능한 범위에서 자동으로 보정해 오류 위치를 더 빠르게 찾을 수 있게 도와줍니다.
자주 묻는 질문
JSON과 자바스크립트 객체는 같은 건가요?
비슷해 보이지만 다릅니다. JSON은 언어에 독립적인 텍스트 형식으로 키를 반드시 큰따옴표로 감싸야 하고 함수나 주석을 담을 수 없는 반면, 자바스크립트 객체 리터럴은 따옴표 없는 키, 함수, 주석까지 허용하는 더 유연한 문법입니다.
JSON에 주석을 넣을 수 있나요?
아니요. 표준 JSON 사양은 주석을 지원하지 않으며 대부분의 파서는 주석이 있으면 오류를 냅니다. 설명이 필요하다면 별도의 키를 추가하거나 문서에 따로 남기는 편이 안전합니다.