Saltar al contenido
webtype.orgwebtype.orgAcerca de

    ↑↓ mover · ⏎ abrir · esc cerrar

    Acerca de

    Qué es esto

    Un puzle de tipos de TypeScript al día, el mismo para todos, que cambia a medianoche UTC. Completa el hueco hasta que pasen todas las comprobaciones. El compilador de TypeScript comprueba tu código en el navegador sin ejecutarlo.

    La solución explicada se publica cuando el puzle deja de ser el del día. Los puzles anteriores siguen disponibles en el archivo y puedes filtrarlos por concepto y dificultad en Práctica.

    Cómo funciona el par

    El par es el número objetivo de intentos. Cada ejecución de las comprobaciones cuesta un intento y revelar una pista cuesta otro. Resuelve el puzle en menos intentos que el par para quedar por debajo. No hay límite de tiempo.

    Por qué a nivel de tipos

    Las comprobaciones comparan tu resultado con el tipo esperado mediante la función de igualdad que aparece abajo. La asignabilidad por sí sola no basta: una intersección de tipos de objeto puede ser asignable a un objeto aplanado aunque esta función los considere distintos.

    Cómo se juzga una comprobación
    type Expect<T extends true> = T
    type Equal<X, Y> =
      (<T>() => T extends X ? 1 : 2) extends (<T>() => T extends Y ? 1 : 2) ? true : false

    Sigue aprendiendo

    Sigue las lecciones, experimenta en el laboratorio o consulta un tipo de utilidad, un error del compilador o un patrón reutilizable. Los puzles y el progreso de las lecciones funcionan sin cuenta y se guardan en este dispositivo.