Consigna: typescript tipar un boolean que discrimine que la siguiente propiedad sea número o fecha Respuesta: Para discriminar si una propiedad es de tipo number o Date basándote en un valor booleano (o una condición), la técnica más robusta en TypeScript es usar tipos condicionales con la palabra clave extends . Esto permite definir un tipo que cambia dinámicamente según la estructura de los datos. Aquí tienes la implementación directa: // 1. Definir el tipo condicional // Si T tiene una propiedad 'esNumero' true, devuelve number. Si no, devuelve Date. type PropiedadDiscriminada = T extends { esNumero : true } ? number : Date ; // 2. Uso en una función o interfaz function procesarDato<T extends { esNumero : boolean }>( datos : T, valor : PropiedadDiscriminada ): void { console . log (valor); } // Caso A: esNumero es true -> El segundo argumento debe ser number procesarDato ({ esNumero : true }, 42 ); // ✅ Correcto // Cas...
Programemos Cosas
programación, informática, matemática, Aprendiendo sobre la marcha !!