Cómo inicializar un objeto TypeScript con datos de JSON
¡Hola a todos! Acabo de empezar a aprender TypeScript y me encontré con un problema que parece simple, pero no puedo encontrar una solución elegante.
Tengo una API que devuelve JSON con datos de usuario. Aquí hay un ejemplo de lo que viene del servidor:
```typescript
const jsonData = {
"id": 42,
"name": "Iván Petrov",
"email": "ivan@example.com",
"isActive": true,
"createdAt": "2024-03-15T10:30:00Z"
};
```
Creé una interface para este objeto:
```typescript
interface User {
id: number;
name: string;
email: string;
isActive: boolean;
createdAt: Date;
}
```
El problema es que cuando intento simplemente asignar el JSON a un objeto de tipo User:
```typescript
const user: User = jsonData; // ¡Error! createdAt es un string, no un Date
```
TypeScript se queja porque `createdAt` en el JSON es un string, mientras que en la interface especifiqué el tipo `Date`. Entiendo que podría simplemente usar `any`, pero eso es una mala práctica.
¿Cómo inicializar correctamente un objeto TypeScript y