DEV Community

Cover image for Paracetamol.ts💊| #45: Explica este código TypeScript
Cristian Fernando
Cristian Fernando

Posted on

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

Explica este código TypeScript

Dificultad: Intermedio

const temperatura = [25, "C"];
const tupla:[number, string] = temperatura;
Enter fullscreen mode Exit fullscreen mode
  • A. No se puede asignar (number | string)[] a [number, string]
  • B. No hay ningún error
  • C. Syntax Error
  • D. Ninguna de las anteriores

Respuesta

✅ A. No se puede asignar (number | string)[] a [number, string]

La variable temperatura es un arreglo de numeros y cadenas, por ende puede aceptar cualquier cantidad de items siempre y cuando sean de estos tipos de datos, en nuestro ejemplo solo tienen 2 valores: 25 y "C" pero podrían tener más.

En cambio nuestra variable tupla es una tupla que explícitamente le indicamos que solo puede tener 2 items, el primero de tipo number y el segundo te tipo string en ese orden.

Por ello no se puede asignar (number | string)[] a [number, string] ya que el primero es un arreglo y el segundo es una tupla.

Para solucionar esto tenemos que declarar a temperatura como una tupla de manera explicita y no dejar que TypeScript infiera su tipo:

const temperatura:[number, string] = [25, "C"];
Enter fullscreen mode Exit fullscreen mode

Ahora si temperatura es una tupla de dos valores y si es asignable a la variable tupla.



Top comments (0)