JSON5와 JSONC - 주석이 있는 JSON
두 방언 모두 사람이 작성하는 설정에 필요한 주석과 후행 쉼표 때문에 존재하지만, 문법과 생태계 범위가 달라서 잘못 고르면 툴체인이 막힙니다.
초급약 10분 소요2026-10-30 업데이트
JSON5, JSONC, JSON Lines, NDJSON은 주석, 후행 쉼표, 스트리밍 같은 실제 요구를 해결하지만, 그 대가로 호환성과 선택의 문제를 함께 가져옵니다.
6개 문서두 방언 모두 사람이 작성하는 설정에 필요한 주석과 후행 쉼표 때문에 존재하지만, 문법과 생태계 범위가 달라서 잘못 고르면 툴체인이 막힙니다.
한 줄에 JSON 값 하나를 두면 이어 붙이기, 스트리밍, 한 줄 단위의 피해 격리가 가능해집니다. 대가는 전체 구조의 부재이며, 검증도 줄 단위로 해야 합니다.
RFC 7464는 0x1E 구분자로 JSON 텍스트를 스트리밍하며, 읽기와 쓰기를 동시에 할 수 있습니다. 규칙, NDJSON과의 차이, 분할 후 파싱하는 구현 방법을 다룹니다.
설정 파일에는 주석, 날짜, 여러 줄 텍스트가 필요하며, 여기서 JSON이 부족합니다. JSON, TOML, YAML, CSON을 비교하고 변환에서 항상 잃는 것이 무엇인지 살펴봅니다.
MessagePack, CBOR, BSON은 모두 JSON을 바이트로 압축합니다. 바이트 비용, int64와 바이너리 처리 방식을 비교하고, 전환할 만한 기준을 명확히 제시합니다.
.jsonl 파일 전체를 JSON.parse에 넣고 에러가 난다면 파일이 깨진 게 아니라 읽는 방식이 틀렸을 가능성이 높습니다. 이 글은 확인과 한 줄씩 읽기의 표준 패턴, JSON 배열과의 상호 변환 명령, 여섯 가지 깨진 줄의 진단 표, 스트리밍 API에서 NDJSON을 소비하는 올바른 방법을 다룹니다.