Cómo especificar correctamente el tipo para Date en TypeScript
¡Hola! Acabo de empezar a aprender TypeScript después de JavaScript y me encontré con una situación confusa al trabajar con fechas.
Supongamos que tengo una función que recibe la fecha de nacimiento del usuario y devuelve su edad:
```typescript
function calculateAge(birthDate) {
const today = new Date();
const diff = today.getTime() - birthDate.getTime();
return Math.floor(diff / (1000 * 60 * 60 * 24 * 365.25));
}
```
En JavaScript simplemente pasaría `new Date('1990-05-15')` y todo funcionaba. Pero TypeScript se queja de que el parámetro `birthDate` tiene un tipo implícito `any`. Intenté escribir `birthDate: Date`, pero entonces no puedo pasar un string `'1990-05-15'` o un número `631152000000` (timestamp) — el compilador da error.
También tengo una interfaz de usuario:
```typescript
interface User {
name: string;
createdAt: ???; // ¿qué poner aquí?
lastLogin: ???; // ¿y aquí?
}
```
Veo que `new Date()` devuelve `Date`, pero en JSON los datos llegan en formato
No answers yet.
Inicia sesión para dejar una respuesta