Les Tableaux en TypeScript

Comprendre les tableaux en TypeScript

En TypeScript, les tableaux sont perçus comme des collections de valeurs d'un type "générique" unique. Cela signifie que tous les éléments d'un tableau doivent appartenir au même type de données tel que spécifié dans la définition du tableau.

Déclaration d'un tableau

Les types de tableaux peuvent être inférés lors de l'initialisation d'un nouveau tableau. Prenons un exemple avec un tableau de voyelles :

const vowels = ['a', 'e', 'i', 'o', 'u'];
vowels.push('y'); // Ça fonctionne
vowels.push(7); // Erreur : Le type 'number' ne peut pas être assigné au type 'string'.

Il est également possible de définir un tableau en précisant le type générique de ses éléments dès le départ de deux manières différentes :

const vowels: string[] = ['a', 'e', 'i', 'o', 'u'];
// autre méthode utilisant la classe Array
const altVowels: Array = ['a', 'e', 'i', 'o', 'u'];

De plus, vous pouvez définir un tableau avec plusieurs types en utilisant l'opérateur "ou" | :

const numbers: (string | number)[] = [1, '2', 3, 'four'];
// Syntaxe alternative
// const numbers: [string, number] = [1, "2", 3, "four"];

Tant que chaque élément de numbers est soit de type string, soit de type number, le tableau est valide.

Types de tableaux

Un type de tableau est constitué du type des valeurs à l'intérieur du tableau, suivi de crochets []. Les tableaux sans éléments initiaux peuvent être déclarés avec leur type, ce qui indique à TypeScript le type d'éléments qui y seront ajoutés ultérieurement.

const dates: Date[] = [];
dates.push(new Date('2021-12-1994')); // Ça fonctionne
dates.push(10241995); // Erreur : Le type 'number' ne peut pas être assigné au type 'Date'.