Tipi di dati TypeScript: il riferimento completo

Tipi di dati TypeScript

Tipi di dati TypeScript: ogni tipo in una tabella cercabile | We.Inc

string, number, boolean, bigint, symbol, null, undefined, any, unknown, never, void, object, array, tuple, enum, tipi letterali e union, con un esempio per ciascuno.

I tipi di dati di base di TypeScript sono i sette primitivi di JavaScript, string, number, bigint, boolean, symbol, null e undefined, scritti in minuscolo. A questi aggiunge tipi speciali (any, unknown, never, void, object), strutture come array, tuple ed enum, e modi per combinare i tipi: tipi letterali, union e intersection.

I quattro gruppi

Cerca nel riferimento per nome o filtralo per gruppo. Ogni riga ha un esempio di una riga che puoi incollare in un file .ts, e la colonna delle note segnala i comportamenti che mettono in difficoltà, come la differenza tra void e undefined o perché unknown è più sicuro di any.

Domande frequenti

Quanti tipi primitivi ha TypeScript?

Sette, gli stessi di JavaScript: string, number, bigint, boolean, symbol, null e undefined. number copre sia gli interi sia i decimali; non esiste un tipo int o float separato.

Qual è la differenza tra any e unknown?

Entrambi accettano qualsiasi valore. any ti lascia fare qualsiasi cosa, quindi gli errori passano inosservati. unknown non ti lascia fare nulla finché non lo restringi con un controllo come typeof, ed è per questo la scelta sicura per dati non fidati.

A cosa serve il tipo never?

never descrive valori che non possono esistere: il tipo di ritorno di una funzione che lancia sempre un'eccezione, e ciò che resta di una union dopo che ogni membro è stato gestito. Questo secondo uso rende possibili i controlli di esaustività.

void è la stessa cosa di undefined?

No. void è il tipo di ritorno di una funzione il cui valore restituito va ignorato. A una funzione tipizzata con ritorno void si può passare una callback che restituisce qualcosa, mentre undefined significa che il valore è davvero undefined.

Qual è la differenza tra object, Object e {}?

object indica qualsiasi valore non primitivo, come oggetti, array e funzioni. {} indica qualsiasi valore tranne null e undefined, primitivi inclusi. Il tipo globale Object è raramente utile; preferisci object o un tipo oggetto specifico.

Primitivi: cosa riporta typeof

I tipi speciali segnano i limiti

Combinare i tipi

Da unknown a un tipo utilizzabile

Restringi l'input non fidato passo dopo passo

Ogni controllo elimina delle possibilità. Dentro l'ultimo ramo il compilatore sa che value è una stringa.

never come controllo di esaustività

Se un nuovo stato si aggiunge alla union, l'assegnazione a never smette di compilare finché non aggiungi un case per esso.

Testo di qualsiasi lunghezza. Anche i template literal sono stringhe.

Interi e decimali allo stesso modo, inclusi NaN e Infinity.

Numeri interi oltre l'intervallo degli interi sicuri. Il suffisso n richiede un target ES2020.

Solo true o false.

Ogni chiamata a Symbol() crea un valore unico.

Con strictNullChecks attivo, null deve essere elencato nel tipo per essere ammesso.

Il valore di una variabile dichiarata ma non assegnata e di una proprietà opzionale mancante.

Disattiva il controllo sul valore. noImplicitAny segnala i punti in cui si insinua senza preavviso.

Contiene qualsiasi valore ma non permette nulla finché non lo restringi.

Nessun valore ha mai questo tipo: funzioni che lanciano sempre, e union senza più nulla dentro.

Un valore di ritorno da ignorare. Non è la stessa cosa di undefined.

Qualsiasi non primitivo: oggetti, array e funzioni.

Array

string[] e Array<string> significano la stessa cosa.

Array readonly

Equivale a ReadonlyArray<number>. push e gli altri metodi che modificano vengono rimossi.

Tuple

Lunghezza fissa con un tipo per posizione. Gli elementi opzionali vanno alla fine: [number, number?].

Genera un vero oggetto a runtime, a differenza della maggior parte della sintassi TypeScript.

Tipo oggetto

Descrive le proprietà inline. Dagli un nome con type o interface per riutilizzarlo.

Tipo funzione

Tipi dei parametri e del ritorno. Preferiscilo al generico tipo Function.

Tipo letterale

Valori esatti invece dell'intero primitivo.

Union

Uno tra diversi tipi. Restringi con typeof, in o un campo comune prima di usare i membri.

Intersection

Tutti i tipi insieme. Usata soprattutto per unire tipi oggetto.

Primitivi

Speciali

Strutture

Combinazioni

Riferimento dei tipi cercabile

Cerca tipi

unknown, tuple, null...

Filtra per gruppo

Tutti

Mostrati {n} tipi su {v}

Nessun tipo corrisponde alla ricerca.

Tipi TypeScript con esempi

Tipo

Gruppo

Esempio

Nota

Inizia gratis · Nessuna carta di credito richiesta

Correlati: Guide

Prodotto

Per chi è

Funzionalità

Risorse

Azienda

Mappa del sito