|Mapped type: convierte métodos síncronos a asyncasyncDifícil
Ejercicio00:00

¿Quieres un reto mayor?

Resuelve en 15:00

info

Importante: Para que se registre el resultado tienes que iniciar sesión.

Mapped type: convierte métodos síncronos a async

Difícil10 pts·Asíncrono / Promesas
ruleRestricciones
  • radio_button_unchecked
    Usa keyof y mapped type
  • radio_button_unchecked
    Envuelve los métodos en Promise.resolve()

Enunciado

Crea un mapped type Asyncify<T> que convierte todas las propiedades de un objeto (que son funciones) en versiones que retornan Promise.

Luego implementa asyncify<T>(obj), una función que toma un objeto y retorna una versión donde cada método está envuelto en Promise.resolve().

const sync = { double: (x: number) => x * 2, greet: (name: string) => "Hi, " + name };
const async = asyncify(sync);
await async.double(5);  // 5 (ya que la función retorna 10 pero Promise la resuelve)

Para los tests, implementa runAsyncifyDemo que usa asyncify y retorna los resultados.

Restriccionesexpand_more
  • Dificultad: Difícil
  • Completa todos los test cases para obtener los 10 puntos.
  • No modificar la línea export al 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
Mapped type: convierte métodos síncronos a async — Difícil | Coding Challenges · Coding Challenges