TypeScriptTypes de base

Tableaux : number[] et Array<T>

Les types de tableaux, où tous les éléments ont le même type.

Sur cette page

Exemple

#
TypeScript
const scores: number[] = [72, 95, 88]
const names: Array<string> = ['Léa', 'Lucas']

scores.push(64)
const best = Math.max(...scores)
console.log(best, names.length)
Résultat
95 2

Définition et utilisation

#

Vous décrivez un tableau en ajoutant des crochets après le type de l’élément : number[] est un tableau de nombres, string[] un tableau de chaînes. Une notation équivalente est le type générique Array<number>.

Grâce à cela, le compilateur connaît le type de chaque élément et suggère les bonnes méthodes. Après names.map(...), il sait que vous recevez un string dans la fonction, et essayer d’ajouter un nombre à un tableau de chaînes échoue.

Un tableau en lecture seule s’écrit readonly string[] ou ReadonlyArray<string>. Le compilateur bloque alors les méthodes qui modifient le tableau, comme push().

Syntaxe

#
Syntaxe
let numbers: number[] = [1, 2, 3]
let strings: Array<string> = ["a", "b"]

Plus d’exemples

#
Un tableau en lecture seule
TypeScript
const levels: readonly string[] = ['facile', 'moyen', 'difficile']
levels.push('expert')
// Erreur : Property 'push' does not exist on type 'readonly string[]'.
Un tableau d’objets
TypeScript
const lessons: { title: string; minutes: number }[] = [
  { title: 'Balises', minutes: 12 },
  { title: 'Attributs', minutes: 9 }
]

const total = lessons.reduce((sum, lesson) => sum + lesson.minutes, 0)
console.log(total)
Résultat
21

Bonnes pratiques

#
  • Choisissez une seule notation (T[] ou Array<T>) et gardez-la dans tout le projet. Vous rencontrerez T[] plus souvent.
  • Pour un tableau de longueur fixe avec des types différents à chaque position, utilisez un tuple.

Entrées associées

#

Vous voyez une erreur ou il manque un exemple ? Écrivez-nous.