Javascript Arrays en 2025

Les évolutions fulgurantes 🚀 du langage Javascript (supporté directement dans les navigateurs et Nodes LTS) nous amènent de nouveaux outils pour faciliter nos vies de développeurs. La vidéo 20+ Must Know Array Methods That Almost Nobody Knows (Déc 2023) de @WebDevSimplified m'a inspiré ce post.

Voici donc la liste exhaustive des méthodes immutables (ou immuables) et mutables pour les objets Array, Object et Map en JavaScript, selon la documentation MDN et les standards actuels (2025) :

Vérifiez la compatibilité sur MDN ou Can I Use.

Méthodes immuables (immutables)

L'utilisation du spread operator ou spread syntax (...) nous permet de faire de l'immutabilité depuis quelques années, mais la syntaxe n'est pas intuitive.

⚠️ Dans la suite :

  • index peut etre positif ou nĂ©gatif.
  • 🌟 dĂ©marque les NouveautĂ©s 2023/2024 Baseline 2024 Newly Available
  • les autres mĂ©thodes sont Baseline Widely Available

Tableaux (Array)

  • at(index) : ElĂ©ment dans une position donnĂ©e
  • concat(array2) : Fusionne des tableaux
  • entries() : ItĂ©rateur clĂ©/valeur
  • every(testing function) : Test sur tous Ă©lĂ©ments
  • filter(testing function) : Filtrage
  • find(testing function) / findIndex(testing function) : Recherche
  • findLast(testing function) / findLastIndex(testing function) : Recherche le dernier Ă©lĂ©ment
  • flat(depth) / flatMap(callback function) : Aplatissement
  • forEach() : ItĂ©ration (ne modifie pas le tableau)
  • includes(value) / indexOf(element) / lastIndexOf() : Recherche
  • join(separator) : Conversion en chaĂ®ne du contenu
  • keys() / values() : ItĂ©rateurs
  • map() : Transformation
  • reduce() / reduceRight() : RĂ©duction
  • slice(start,end) : Copie partielle
  • some(testing function, thisArg) : Test sur au moins un Ă©lĂ©ment
  • toLocaleString(locales, options) : Conversion localisĂ©e (i18n)
  • toReversed() 🌟: Copie inversĂ©e
  • toSorted() 🌟: Copie triĂ©e
  • toSpliced() 🌟: Copie modifiĂ©e (splice immuable)
  • with() 🌟: Copie avec Ă©lĂ©ment remplacĂ©

Objets (Object) & Maps (Map)

Baseline 2024 Newly Available

  • Object.groupBy() : Groupement d'Ă©lĂ©ments par clĂ© (ES2023)
  • Map.groupBy() : Groupement d'Ă©lĂ©ments avec clĂ©s arbitraires (ES2023)

Méthodes mutables

Tableaux (Array)

Baseline Widely Available

  • copyWithin() : Copie interne
  • fill() : Remplissage
  • pop() / push() : Ajout/suppression en fin
  • reverse() : Inversion in-place
  • shift() / unshift() : Ajout/suppression en dĂ©but
  • sort() : Tri in-place
  • splice() : Modification directe

Sources