Ejercicio00:00
¿Quieres un reto mayor?
Resuelve en 15:00
info
Importante: Para que se registre el resultado tienes que iniciar sesión.
Logger middleware con HOF
Difícil30 pts
ruleRestricciones
- radio_button_uncheckedConstruye el log con template literal
Enunciado
Implementa la función withLogger(fn: (a: number, b: number) => number, label: string): (a: number, b: number) => { result: number; log: string } que envuelve una función numérica y retorna una nueva función que, al llamarse, retorna un objeto con:
result: el resultado de llamar afn(a, b).log: el string"[label] args: [a, b] -> result"(usando los valores reales).
const loggedAdd = withLogger((a, b) => a + b, "suma");
loggedAdd(3, 4);
// { result: 7, log: "[suma] args: [3, 4] -> 7" }
Para verificar, la función exportada runWithLogger(a: number, b: number) aplica withLogger a una suma con el label "add".
Restriccionesexpand_more
- Dificultad: Difícil
- Completa todos los test cases para obtener los 30 puntos.
- No modificar la línea
exportal final del archivo. - Se recomienda evitar el uso de inteligencia artificial para que realmente tú practiques los ejercicios.
Puedes usar console.log() para depurar. Los resultados aparecen en la Consola de salida, no en el navegador.
Inicia sesión para reaccionar
Inicia sesión para reaccionar