JSON a mecanografiado

Convertidor gratuito de JSON a TypeScript. Genere interfaces o tipos desde JSON con objetos anidados, arrays y uniones inferidas automáticamente, copie el resultado, sin registro.

Construido y mantenido por Shehzad Munir ·

JSON a mecanografiado
Loading Loading JSON to TypeScript
Share

Modelos tipificados a partir de datos reales.

Convierta cualquier JSON en interfaces o tipos TypeScript al instante, con objetos anidados, matrices, uniones y propiedades opcionales inferidas automáticamente.

Escribir a mano interfaces TypeScript para que coincidan con una respuesta API es tedioso y propenso a errores. Pegue una carga útil JSON y esta herramienta recorrerá la estructura, generando una interfaz coincidente (o alias de tipo) con campos escritos correctamente, interfaces anidadas para objetos y tipos de elementos de matriz. Las matrices mixtas se convierten en tipos de unión, por lo que sus modelos reflejan los datos exactamente.

Características

  • Generar interfaces o escribir alias
  • Maneja objetos y matrices anidados
  • Infiere tipos de unión a partir de matrices mixtas.
  • Propiedades opcionales para nulos
  • Nombre de tipo raíz personalizado
  • Se ejecuta localmente: el código nunca se cargó

Cómo utilizar JSON a mecanografiado

  1. 1

    Pegar JSON

    Coloque un objeto o una matriz de datos.

  2. 2

    Establecer opciones

    Elija la interfaz o el tipo, nombre la raíz, marque los valores nulos como opcionales.

  3. 3

    Revisa los tipos

    Las interfaces anidadas se generan automáticamente.

  4. 4

    Copiar

    Copie el TypeScript en su proyecto.

Casos de uso comunes

  • Escriba una respuesta API rápidamente
  • Generar modelos desde un dispositivo JSON
  • Crear interfaces para un archivo de configuración
  • Tipos de bootstrap para una nueva integración

guía detallada

Ajusta la salida a tu estilo

Elija si desea emitir interfaces o escribir alias, nombrar el tipo raíz y, opcionalmente, marcar los campos que aceptan valores NULL como opcionales. El código generado se actualiza en vivo y está listo para pegarse en su proyecto. Todo se ejecuta en su navegador, por lo que las cargas útiles de API privadas y los esquemas internos nunca salen de su máquina.

Cómo se infieren los tipos

El convertidor lee su JSON y asigna cada valor a un tipo de TypeScript: cadenas, números y booleanos se convierten en cadenas, números y booleanos, los objetos anidados se convierten en sus propias interfaces con nombre y las matrices se convierten en matrices escritas. Cuando una matriz contiene diferentes tipos de valores, el resultado es una unión como (cadena | número)[]. Un valor nulo se vuelve nulo porque la muestra no puede mostrar lo que contiene el campo cuando se establece. Los nombres de propiedades que no son identificadores válidos, como "nombre", se citan para que el resultado siempre se compile.

Obtener tipos precisos a partir de datos de muestra

Los tipos inferidos son tan buenos como la muestra. Si falta un campo en algunas respuestas de API, márquelo como opcional con ? después de generar, y si un campo puede ser nulo en producción, amplíelo a cadena | nulo. Utilice la respuesta más completa que pueda encontrar, idealmente una en la que estén presentes todos los campos opcionales. Para las API que no controla, combine los tipos generados con la validación en tiempo de ejecución, por ejemplo Zod o io-ts, porque los tipos de TypeScript desaparecen en tiempo de ejecución y no detectarán una API modificada. Las fechas llegan en JSON como cadenas, así que conviértalas usted mismo si necesita objetos de fecha.

Preguntas frecuentes

¿Cómo convierto JSON a una interfaz TypeScript?

Pegue su JSON y la herramienta generará una interfaz coincidente al instante, creando interfaces anidadas para objetos e infiriendo tipos de elementos de matriz. Cópialo directamente en tu código.

¿Maneja objetos y matrices anidados?

Sí. Los objetos anidados se convierten en sus propias interfaces con nombre y las matrices se escriben según sus elementos. Las matrices con tipos mixtos producen una unión como (cadena | número)[].

¿Puedo obtener alias de tipo en lugar de interfaces?

Sí: cambie la opción para emitir alias de 'tipo' en lugar de declaraciones de 'interfaz' y cambie el nombre del tipo raíz para adaptarlo a su proyecto.

¿Mi JSON está subido a alguna parte?

No. El análisis y la generación se realizan completamente en su navegador, por lo que las cargas útiles confidenciales nunca abandonan su dispositivo.

¿Cómo genero interfaces TypeScript desde JSON?

Pegue su JSON (por ejemplo, una respuesta API), asigne un nombre a la raíz y la herramienta infiere tipos y produce interfaces listas para usar, incluidos objetos y matrices anidados. Se ejecuta localmente, por lo que las cargas útiles reales permanecen privadas.

¿Maneja objetos anidados y propiedades opcionales?

Sí. Las estructuras anidadas se convierten en sus propias interfaces con nombre, las matrices obtienen tipos de elementos y usted puede marcar los campos como opcionales para que los tipos coincidan con datos reales, que a veces faltan.

¿Puedo generar un alias de tipo en lugar de una interfaz?

Sí. Elija la interfaz o escriba la salida según el estilo de su código base; ambos producen TypeScript preciso a partir de la forma JSON inferida.

De la revista

All articles →