DEV Community

Cristian Fernando
Cristian Fernando

Posted on • Edited on

1

Paracetamol.ts💊| #21: Explica este código TypeScript

Explica este código TypeScript

Dificultad: Intermedio

enum FinDeSemana {
  "Sabado" = "Sábado",
  "Domingo" = "Domingo",
}

const fn = (dia:FinDeSemana) => {
  return dia;
}

console.log(fn(123))
console.log(fn("Domingo"))
console.log(fn(FinDeSemana.Domingo))
Enter fullscreen mode Exit fullscreen mode
  • A. Error, Error, Error
  • B. 123, Domingo, Domingo
  • C. Error, Error, Domingo
  • D. Error, Domingo, Domingo

Respuesta

✅ C. Error, Error, Domingo

Los enum pueden ser unsados como tipos de datos, la función fn recibe un parámetro de tipo FinDeSemana lo que significa que solo puede funcionar con los valores de FinDeSemana.

  • Para fn(123):
    ❌ Nos da error, ya que 123 no es un valor válido para FinDeSemana.

  • Para fn("Domingo"):
    ❌ Nos da error, pese a que la cadena Domingo si pertenece al enum no funciona por que el valor en cadena Domingo no es lo mismo que acceder al enum así FinDeSemana.Domingo.

  • Para fn(FinDeSemana.Domingo):
    ✅ Si funciona, la menra correcta de pasar el argumento a la función es FinDeSemana.Domingo


Puedes ver el reto anterior acá:

Sentry blog image

How I fixed 20 seconds of lag for every user in just 20 minutes.

Our AI agent was running 10-20 seconds slower than it should, impacting both our own developers and our early adopters. See how I used Sentry Profiling to fix it in record time.

Read more

Top comments (0)