Estoy buscando cómo declarar una variable donde puedo almacenar usuarios por fecha de nacimiento y evitar usar cualquier
let formatedUsers = {} as "TYPE_NEEDED" for (let i = 0; i < users.length; i++) { const user= users[i]; if (!formatedUsers[user.birthdate]) formatedUsers[user.birthdate] = []; formatedUsers[user.birthdate].push(user); }Al final quiero que mi variable "formatedUsers" sea así:
formatedUsers = { 12-02-1996: [user1, user3, user4], 02-04-1998: [user2], 05-08-1999: [user5, user6] }Las claves de objeto son cadenas y los valores de objeto son matrices de usuarios, por lo que un Registro relativamente simple lo hará. Suponiendo que tiene una referencia al tipo de user , puede hacer:
const formattedUsers: Record<string, User[]> = [];Si no tiene una referencia al tipo de usuario, puede extraerlo primero.
type User = (typeof users)[number];En ese caso, puede utilizar la interfaz Grabar.
let formatedUsers: Record<number, User[]> = {0:[]};También puede inicializar el valor de esa manera.
Esto es más preciso ya que requiere que las claves sean number-number-number
const formattedUsers: Record<`${number}-${number}-${number}`, User[]> = {};