Kodokon kodokon.com

Tipos primitivos, arreglos y uniones simples

Aprende los tres tipos básicos, cómo tipar un arreglo y cómo crear uniones de tipos.

7 min · 3 preguntas

Abrir esta lección en Kodokon

Los tipos primitivos son los bloques básicos de construcción de TypeScript. Los tres más comunes son: string para los textos (siempre entre comillas), number para todos los números (enteros y decimales por igual) y boolean para los valores true o false. Ten en cuenta que se escriben en minúsculas.

TYPESCRIPT
let city: string = "Paris";
let temperature: number = 21.5;
let isRaining: boolean = false;
Un ejemplo de cada tipo primitivo.

Un arreglo es una lista ordenada de valores. Para tiparlo, escribes el tipo de los elementos seguido de corchetes: number[] se lee como «arreglo de números». TypeScript comprueba entonces cada elemento que añades.

TYPESCRIPT
const scores: number[] = [12, 15, 9];
const guests: string[] = ["Nadia", "Louis"];

scores.push(18); // accepted: 18 is a number
// scores.push("twenty"); -> error: not a number
El arreglo mantiene siempre el mismo tipo de elemento.

A veces un valor puede tener legítimamente varios tipos. Una unión se escribe con una barra vertical | y se lee como «o»: el tipo string | number acepta un texto o un número. También puedes crear una unión de valores específicos para restringir las opciones posibles.

TYPESCRIPT
let answer: string | number;
answer = "forty-two"; // accepted
answer = 42;          // also accepted

type Size = "small" | "medium" | "large";
let cupSize: Size = "medium";
// cupSize = "xl"; -> error: value not allowed
Dos uniones: una unión de tipos, una unión de valores.

Prueba de conocimientos

Comprueba que has retenido los puntos clave de esta lección.

  1. ¿Qué tipo usarías para el valor true?
    • string
    • number
    • boolean
  2. ¿Cómo declaras un arreglo que solo contiene números?
    • let list: number[]
    • let list: [number]
    • let list: array
  3. ¿Qué significa el tipo string | number?
    • El valor es a la vez un texto y un número
    • El valor es un texto o un número
    • El valor debe ser un texto
    • El valor puede ser cualquier cosa