AI 탐구노트

[Json] Json 파일에 주석 추가하기 - 비표준 포맷 이용과 꼼수 방법 본문

기술 팁

[Json] Json 파일에 주석 추가하기 - 비표준 포맷 이용과 꼼수 방법

42morrow 2025. 6. 4. 15:37

 

 

원래 Json 파일은 표준 사양 상 주석을 지원하지 않습니다. 예를 들어 // 또는 /* */ 또는 # 과 같은 주석이 통하지 않는다는 얘기죠. 이들을 json 파일 내에 직접 넣으면 파싱할 때 에러가 발생합니다. 하지만, 간혹 json 파일 내에 코멘트 처리가 간절히 필요할 때가 있습니다. 그럴 때 어떻게 하나 고민하다가 찾은 내용을 기록해 둡니다. 

 

 

1️⃣ 문자열 키를 주석처럼 추가해서 사용

대부분의 json 파서에서 오류없이 처리합니다. 하지만 데이터로 처리되므로 코드에서 필터링이 필요합니다. 다른 대안들 대비해서 아무래도 이 방법이 제일 효과적일 것 같습니다. 

{
  "_comment": "이 설정은 서버의 포트를 나타냅니다.",
  "port": 8080
}

 

2️⃣ 키마다 주석용 메타 키를 추가해서 사용

 

아예 구조에 주석 용 키를 추가해서 사용하는 방법인데, 항상 필요한 경우라면 몰라도 어떤 특정 데이터에 대해서만 남겨야 하는 주석이라면 불필요한 작업이 될 수 있겠습니다. 

{
  "port": 8080,
  "_port_comment": "서버가 사용할 포트 번호"
}

 

 

3️⃣ jsonc (json with comments)를 사용

JsonC는 Json 표준이 아닌 주석추가를 지원하는 확장 포맷입니다. // 또는 /* */를 지원합니다. 역시 필요성은 느끼고 있다는 얘기인가요? -_-; 하지만, 광범위한 파서에서 지원하지 않으면 이것도 정답은 아닌 듯 싶습니다. (참고로 python에서는 jsonc 라이브러리를 지원합니다)

{
  // 서버 포트
  "port": 8080
}

 

 

4️⃣ Json 외에 타 포맷 (예:YAML) 등 사용 고려

 

json 자체적으로는 근본적인 해결은 안 되니 아예 다른 포맷을 사용하라는 얘기입니다. 개인적인 생각으로는 바람직한 방법은 아닌 듯 싶습니다.