Cómo convertir un objeto JSON en una instancia de clase TypeScript
¡Hola a todos! Soy nuevo en TypeScript y me encontré con un problema al trabajar con datos JSON. Tengo una clase User con campos y métodos:
```typescript
class User {
name: string;
age: number;
email: string;
constructor(name: string, age: number, email: string) {
this.name = name;
this.age = age;
this.email = email;
}
isAdult(): boolean {
return this.age >= 18;
}
}
```
Cuando obtengo datos del servidor en formato JSON, por ejemplo mediante fetch:
```typescript
const response = await fetch('/api/user');
const jsonData = await response.json();
// jsonData = { name: 'Иван', age: 25, email: 'ivan@example.com' }
```
Intento convertirlo al tipo User:
```typescript
const user: User = jsonData as User;
```
Pero luego, cuando llamo al método user.isAdult(), TypeScript no muestra error, pero en tiempo de ejecución obtengo "user.isAdult is not a function". Entiendo que as User es solo una conversión de tipo para el compilador, pero en realidad el objeto no es