사용 방법
- JSON 샘플을 붙여넣거나 "예시 불러오기"를 클릭하세요.
- 루트 타입의 이름을 설정하세요.
- 인터페이스와 타입 별칭 중에서 고르세요.
- 생성된 타입을 복사하거나 다운로드하세요.
옵션 설명
- 루트 타입 이름
- 최상위 타입의 이름으로, 예를 들어 User나 ApiResponse처럼 정해요. 중첩 타입은 키 이름을 따서 이름이 붙어요. address는 Address가 되고, posts의 항목은 Post가 돼요.
- interface 대신 type 사용
- 인터페이스 대신 타입 별칭(type User = { … })을 생성해요. 일반 데이터에서는 둘 다 똑같이 동작해요.
예시
{"id": 1, "tags": ["a"], "owner": {"name": "Ada"}}는 다음과 같이 변환돼요:
export interface Owner {
name: string;
}
export interface Root {
id: number;
tags: string[];
owner: Owner;
}
자주 묻는 질문
객체 배열은 어떻게 처리되나요?
모든 항목이 하나의 타입으로 병합돼요. 일부 항목에만 있는 키는 선택적 속성(key?)이 되고, 가끔 null인 값은 string | null 같은 유니언 타입이 돼요.
필드 타입이 unknown으로 나오는 이유는 뭔가요?
샘플에서 그 필드의 값이 null뿐이라 실제 타입을 추론할 수 없었기 때문이에요. unknown을 올바른 타입으로 바꾸거나, 그 필드에 값이 있는 샘플을 붙여넣으세요.
정수와 소수는 다른 타입이 되나요?
TypeScript에서는 아니에요. 둘 다 number가 돼요. Go, Rust, Python 출력에서는 구분해요.
JSON이 업로드되나요?
아니요. 타입은 브라우저에서 생성되므로 실제 데이터가 담긴 API 응답도 기기 밖으로 나가지 않아요.
개인정보 보호
이 도구는 전적으로 브라우저에서 실행돼요. 파일과 텍스트는 기기에서 처리되며 서버로 업로드되지 않아요.