Array.prototype.at()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since March 2022.

La méthode at() prend un entier en argument et renvoie l'élément du tableau situé à cet indice. Des valeurs entières positives ou négatives peuvent être utilisées en argument. Dans ce dernier cas, la recherche est effectuée depuis la fin du tableau.

L'accès aux éléments d'un tableau en utilisant les crochets ne permet que d'utiliser des indices positifs : array[0] renverra le premier élément, array[array.length-1] renverra le dernier. Avec array.at(-1), on peut avoir une écriture plus concise pour accéder au dernier élément. Voir les exemples ci-après.

Exemple interactif

Syntaxe

js
at(indice);

Paramètres

indice

L'indice (c'est-à-dire la position) de l'élément du tableau qu'on souhaite récupérer. Il est possible d'utiliser des valeurs négatives pour récupérer un élément en comptant depuis la fin du tableau.

Valeur de retour

L'élément du tableau situé à l'indice indiqué. Si aucune valeur ne peut être trouvé à l'indice donné, c'est undefined qui est renvoyé.

Exemples

Renvoyer la dernière valeur d'un tableau

L'exemple qui suit fournit une fonction qui renvoie le dernier élément trouvé dans un tableau.

js
// Le tableau avec des éléments
const corbeille = ["pomme", "banane", "poire"];

// Une fonction qui renvoie le dernier
// élément d'un tableau
function dernierElem(arr) {
  return arr.at(-1);
}

// On récupère le dernier élément du
// tableau 'corbeille'
const item1 = dernierElem(corbeille);
console.log(item1);
// Affiche 'poire' dans la console

// On ajoute un élément au tableau
// 'corbeille'
corbeille.push("orange");
const item2 = dernierElem(corbeille);
console.log(item2);
// Affiche 'orange' dans la console

Comparaison de méthodes

On compare ici différentes façons d'accéder à l'avant-dernier élément d'un tableau (Array). Bien que toutes les méthodes présentées ici soient valides et équivalentes, on pourra noter la concision et la lisibilité de la méthode at().

js
// Un tableau de valeurs
const couleurs = ["rouge", "vert", "bleu"];

// En utilisant la propriété length
const avecLength = couleurs[couleurs.length - 2];
console.log(avecLength);
// Affiche 'vert' dans la console

// En utilisant la méthode slice()
// qui renvoie un tableau
const avecSlice = couleurs.slice(-2, -1);
console.log(avecSlice[0]);
// Affiche 'vert' dans la console

// En utilisant la méthode at()
const avecAt = couleurs.at(-2);
console.log(avecAt);
// Affiche 'vert' dans la console

Spécifications

Specification
ECMAScript Language Specification
# sec-array.prototype.at

Compatibilité des navigateurs

BCD tables only load in the browser

Voir aussi