주제 이해를 돕기 위한 AI 생성 이미지 · LTCT 자체 제작오늘의 질문크기를 재지 않는 회원번호·우편번호를 숫자로 바꾸면 어떤 정보가 사라질까요?
식별자 00123을 숫자로 보내면 123으로 줄고 문자열로 보내면 앞자리 0을 보존하는 두 경로 그림입니다. · 한국논리학협회 자체 제작그림 크게 보기 ↗01숫자처럼 보여도 수량이 아닐 수 있습니다
00123은 어떤 체계에서는 123번과 다른 고정 길이 식별자입니다. 앞자리 0이 자리수를 맞추거나 분류 구역을 나타낼 수 있습니다.
식별자끼리 더하고 빼지 않는다면 숫자형의 이점보다 형식 손실 위험이 큽니다. 자료 사전에 ‘문자열’이라고 명시하는 이유입니다.
02JSON 숫자에는 앞자리 0을 그대로 쓸 수 없습니다
RFC 8259의 숫자 문법은 정수부가 0 자체이거나 1~9로 시작하도록 정합니다. 따라서 00123을 JSON 숫자로 직접 적는 표현은 표준 문법이 아닙니다.
문자열 "00123"은 다섯 문자를 그대로 보존합니다. 화면에 다시 표시하거나 다른 체계와 대조할 때 원형을 유지할 수 있습니다.
참고 · Tim Bray — JSON 숫자 문법과 문자열 ↗
03AI 출력도 스키마로 검사합니다
AI가 표를 만들 때 숫자로 추측해 앞자리 0을 지울 수 있습니다. 입력 스키마와 출력 스키마에서 식별자 자료형, 길이, 허용 문자를 함께 정합니다.
다만 문자열로 저장한다고 식별자가 진짜인지 보장되지는 않습니다. 중복·체크숫자·발급기관 규칙은 별도 검증이 필요합니다.
입력00123JSON 저장값123다시 읽은 값123형식 보존아니요 원래 식별자 형식이 사라졌습니다.식별자는 크기를 계산하는 수량이 아닙니다. 우편번호·회원번호처럼 앞자리 0이 의미를 가지면 문자열로 선언해야 합니다.
관계를 읽고, 다른 상황에 적용하기두 문제로 생각 확인
나의 설명으로 마무리오늘 발견한 관계
0 / 4,000자
메모는 현재 기기의 브라우저에만 보관됩니다. 계정이나 다른 기기에는 동기화되지 않습니다.
출처와 제작 안내
원문을 참고해 설명·도표·문항·실험을 새로 작성했습니다. 별도 표시가 없는 사례와 수치는 학습을 위한 가상 예시입니다. 원문 번역이나 실제 모델의 성능 평가 자료가 아닙니다.
- JSON 숫자 문법과 문자열 ↗Tim BrayRFC 8259: The JavaScript Object Notation (JSON) Data Interchange Format
2017년 12월 표준 원문에서 JSON 숫자의 정수부는 0 자체를 제외하면 앞자리 0을 허용하지 않는다는 문법과 문자열 정의를 확인했습니다. 식별자를 문자열로 유지하는 예시는 LTCT의 적용입니다.