Tipi letterali in Typescript | Aulab

GUIDE PER ASPIRANTI PROGRAMMATORI

Tipi letterali in Typescript

In aggiunta ai tipi primitivi, TypeScript offre un modo molto vantaggioso per vincolare la definizione di un tipo a uno o più specifici valori letterali che una data variabile può assumere, o che una data funzione può restituire.  Prendiamo il seguente esempio:  let a = 1; // a: number const b = 1; // b:…

Lezione 15 / 30
Enza Neri
Immagine di copertina

Vuoi avviare una nuova carriera o fare un upgrade?

Trova il corso Digital & Tech più adatto a te nel nostro catalogo!

In aggiunta ai tipi primitivi, TypeScript offre un modo molto vantaggioso per vincolare la definizione di un tipo a uno o più specifici valori letterali che una data variabile può assumere, o che una data funzione può restituire. 

Prendiamo il seguente esempio: 

let a = 1; // a: number 
const b = 1; // b: 1

Come è facile aspettarsi, il tipo inferito per a è number, e infatti ha perfettamente senso che la variabile a sia riassegnata con altri valori numerici in altri punti del codice. Essendo invece b una costante, TypeScript è in grado di restringere ulteriormente il suo tipo, vincolandolo esclusivamente al valore 1, che qui viene usato come tipo. 

Qualunque notazione letterale può essere usata come tipo; vediamo un po’ di esempi:

let a: 42; 
let b: "hello"; 
let c: null; 
let d: undefined; 
let e: false;

Queste variabili sono vincolate ad avere un solo valore. Si potrebbe pensare che non abbia alcun senso definire delle variabili con tale vincolo, e infatti è proprio così: una variabile che può assumere un singolo valore è di fatto una costante! Ma i tipi letterali sono utilissimi quando combinati con altri tipi: ci permettono infatti di ridurre i possibili valori di una variabile a un insieme definito e vincolato di opzioni possibili: 

function rollDice(): 1 | 2 | 3 | 4 | 5 | 6 { ... }

La funzione rollDice, che abbiamo incontrato in precedenza, restituisce necessariamente un numero da 1 a 6. In questo caso abbiamo combinato sei diversi tipi letterali con una notazione speciale che approfondiremo più avanti, e che essenzialmente significa oppure, analogamente all’operatore booleano || che usiamo nel linguaggio JavaScript

Sei indeciso sul percorso? 💭

Parliamone! Scrivici su Whatsapp e risponderemo a tutte le tue domande per capire quale dei nostri corsi è il più adatto alle tue esigenze.

Oppure chiamaci al 800 128 626