Les tableaux sont des objets de haut-niveau semblables à des listes.

Créer un tableau et obtenir sa taille

const fruits = ['Apple', 'Banana'];
console.log(fruits.length);// 2

Accéder (via son index) à un élément du tableau

const first = fruits[0];// Apple
const last = fruits[fruits.length - 1];// Banana

Boucler sur un tableau

fruits.forEach(function(item, index, array) {
  console.log(item, index); // Apple 0 puis // Banana 1
});

Ajouter à la fin du tableau

const newLength = fruits.push('Orange');
// ["Apple", "Banana", "Orange"]

Supprimer le dernier élément du tableau

const last = fruits.pop(); // supprime Orange (à la fin)
// ["Apple", "Banana"];

Supprimer le premier élément du tableau

const first = fruits.shift(); // supprime Apple (au début)
// ["Banana"];

Ajouter au début du tableau

const newLength = fruits.unshift('Strawberry') // ajoute au début
// ["Strawberry", "Banana"];

Trouver l'index d'un élément dans le tableau

fruits.push('Mango');
// ["Strawberry", "Banana", "Mango"]
const pos = fruits.indexOf('Banana');
// 1

Trouver l'index d'un élément dans le tableau en fonction d'une condition

Grâce à la méthode findIndex
Ex :

let term_index = state.terms.findIndex(element => {
  return element.id === termId;
});

Méthode "map"

où comment créer un nouveau tableau à partir d'un tableau existant selon une fonction de transformation

La méthode map() crée un nouveau tableau avec les résultats de l'appel d'une fonction fournie sur chaque élément du tableau appelant.

Ex : 

const array1 = [1, 4, 9, 16];

// pass a function to map
const map1 = array1.map(x => x * 2);

console.log(map1);
// expected output: Array [2, 8, 18, 32]

Méthode "filter"

où comment créer un nouveau tableau à partir d'un tableau existant en filtrant selon une condition

Ex :

const words = ['spray', 'limit', 'elite', 'exuberant', 'destruction', 'present'];
const result = words.filter(word => word.length > 6);
console.log(result);
// expected output: Array ["exuberant", "destruction", "present"]

Supprimer un élément par son index

const removedItem = fruits.splice(pos, 1); // supprime 1 élément à la position pos
// ["Strawberry", "Mango"]

Supprimer des éléments à partir d'un index

const vegetables = ['Cabbage', 'Turnip', 'Radish', 'Carrot'];
console.log(vegetables); 
// ["Cabbage", "Turnip", "Radish", "Carrot"]
var pos = 1, n = 2;
var removedItems = vegetables.splice(pos, n); 
// n définit le nombre d'éléments à supprimer,
// à partir de la position pos
console.log(vegetables);
// ["Cabbage", "Carrot"] (le tableau d'origine est changé)

console.log(removedItems);
// ["Turnip", "Radish"] (splice retourne la liste des éléments supprimés)

Copier un tableau

const shallowCopy = fruits.slice(); // crée un nouveau tableau qui contient les éléments de fruits
// ["Strawberry", "Mango"]

Trier un tableau

Pour trier un tableau, on va utiliser une fonction de callback qui attend deux arguments. Les deux paramètres vont permettre de comparer les éléments deux par deux. Le classement des éléments du tableau est basé sur la valeur de retour de la fonction de callback.
Si la fonction retourne une valeur :

  • > 0 alors, l'ordre des éléments sera inversé
  • < 0, l'ordre des éléments restera inchangé

Attention, contrairement à filter ou à map, sort modifie le tableau initial

Exemple

const tableau = [{"id":2},{"id":5},{"id":1}];

tableau.sort(function (a, b) {
  if (a.id < b.id)
     return -1;
  if (a.id > b.id)
     return 1;
  // a doit être égal à b
  return 0;
});
console.log("tableau trié par ordre d'id croissant : ", tableau);

// version plus courte de la fonction de comparaison :

tableau.sort(function (a, b) {
  return a.id - b.id;
});

+ d'infos