서로 다른 레코드 넣기
같은 API 응답의 객체 여러 개를 최상위 배열에 넣으세요. 일부에만 있는 키는 nullable이 되고 중첩 배열도 보이는 원소를 모두 검사합니다.
타입 생성
서로 다른 두 레코드의 예제를 살펴보고 대상 언어와 루트 이름을 바꿔 보세요.
JSON은 이 브라우저 안에서만 분석하고 생성하며 서버에 보내거나 저장하지 않습니다.
선언 2개 · nullable 타입 2개
JSON 클래스 변환은 API 응답을 보고 모델 초안을 만들 때 유용합니다. 같은 모양의 레코드를 배열에 여럿 넣으면 두 번째에만 있는 필드도 빠지지 않습니다.
생성된 선언은 출발점입니다. 샘플에 없는 필드, 비즈니스 검증, 금액의 정밀도와 프로젝트 직렬화 설정은 직접 확인해야 합니다.
JSON 클래스 변환은 첫 원소만 읽지 않습니다. 뒤쪽 레코드에만 있는 키도 모델에 포함하고 일부 레코드에 없으면 nullable로 표시합니다.
로컬 JSON 하나로 Rust 구조체, C#·Dart·PHP 클래스와 Scala case class를 만들 수 있습니다. 다운로드 확장자는 선택한 언어에 맞춰 바뀝니다.
같은 API 응답의 객체 여러 개를 최상위 배열에 넣으세요. 일부에만 있는 키는 nullable이 되고 중첩 배열도 보이는 원소를 모두 검사합니다.
Rust에는 Serde, C#에는 System.Text.Json 속성을 사용합니다. Dart에는 fromJson/toJson이 있고 PHP와 Scala 선언에는 프로젝트의 변환 코드가 더 필요합니다.
자동 생성은 수정 후 350ms 기다립니다. 끄면 생성 버튼이 보이고 Ctrl/Cmd+Enter도 쓸 수 있습니다. 입력이나 옵션을 바꾸면 복사와 다운로드가 잠시 비활성화됩니다.
C# 클래스 생성에는 JsonPropertyName을 써 원래 키를 보존합니다. Rust에는 Serde rename, Option과 Vec가 들어갑니다.
Dart 모델 클래스에는 중첩 객체와 목록용 fromJson/toJson을 생성합니다. 실제 Flutter나 Dart 환경에서 코드를 시험해야 합니다.
PHP 8은 타입이 있는 프로퍼티와 배열 항목 주석을, Scala는 Option과 List를 쓰는 case class를 받습니다. 역직렬화 코덱은 별도입니다.
JSON 클래스 변환은 JavaScript의 숫자 반올림 전에 원래 토큰을 읽습니다. 큰 정수와 소수는 잘못된 좁은 정수 타입 대신 폭넓은 타입으로 남깁니다.
아니요. 붙여 넣은 JSON을 브라우저에서만 분석하고 생성합니다. 서버 업로드나 입력의 영구 저장 기능은 없습니다.
날짜처럼 보이는 문자열도 문자열로 둡니다. 한 샘플만으로 날짜라는 계약을 증명할 수 없어 타입을 임의로 바꾸지 않습니다.
초안으로 사용하세요. 이름 규칙, nullable 필드와 직렬화 방식은 실제 API와 프로젝트 설정에 맞춰 검토해야 합니다.
아니요. 최상위 배열의 모든 객체를 읽어 필드를 합칩니다. 일부에만 있는 필드는 nullable로 나타납니다.
null만 보이면 실제 타입을 알 수 없어 넓은 타입을 사용합니다. 다른 레코드에 구체적인 값이 있으면 그 타입을 쓰되 nullable로 표시합니다.
빠진 데이터 형태가 있나요?
JSON 클래스 변환에 실제 레코드를 여러 개 넣고 nullable 필드와 이름을 살펴본 다음 현재 언어의 소스 파일을 받아 프로젝트에서 테스트하세요.