Visit Mozilla.org

Référence de JavaScript 1.5 Core:Objets globaux:Array:concat

Un article de MDC.


Sommaire

[modifier] Résumé

Renvoie un tableau formé du tableau appelant fusionné avec d'autres tableaux et/ou valeurs.

Méthode de Array
Implémentation : JavaScript 1.2, NES 3.0
Version ECMA : ECMA-262

[modifier] Syntaxe

var resultArray = array.concat(valeur1, valeur2, ..., valeurN);

[modifier] Parameters

valeurN 
Tableaux et/ou valeurs à ajouter au tableau résultant.

[modifier] Description

La méthode concat crée un nouveau tableau constitué des éléments de l'objet this sur lequel elle a été appelée, suivis dans l'ordre par, pour chaque paramètre, les éléments de ce paramètre (s'il s'agit d'un tableau) ou le paramètre lui-même (s'il ne s'agit pas d'un tableau).

concat ne modifie pas this ni aucun des tableaux passés en paramètres, mais renvoie une copie à « un niveau de profondeur » qui contient des copies des mêmes éléments combinées que ceux des tableaux originaux. Les éléments des tableaux originaux sont copiés dans le nouveau tableau comme suit :

  • Pour les références à des objets (et non les objets eux-mêmes) : concat copie ces références dans le nouveaux tableau. Tant l'original que le nouveau tableau font référence au même objet. C'est-à-dire que si un objet référencé est modifié, ces changements sont visibles tant dans le nouveau que dans les tableaux originaux.
  • Pour les chaînes et les nombres (pas les objets String et Number) : concat copie les valeurs des chaînes et des nombres dans le nouveau tableau.

Toute opération sur le nouveau tableau n'aura aucun effet sur les tableaux d'origine, et vice versa.

[modifier] Exemples

[modifier] Exemple : fusion de deux tableaux

Le code qui suit concatène deux tableaux :

var alpha = ["a", "b", "c"];
var numérique = [1, 2, 3];

// crée un tableau ["a", "b", "c", 1, 2, 3] ; alpha et numérique ne sont pas modifiés
var alphanumérique = alpha.concat(numérique);

[modifier] Exemple : fusion de trois tableaux

Le code qui suit concatène trois tableaux :

var num1 = [1, 2, 3];
var num2 = [4, 5, 6];
var num3 = [7, 8, 9];

// crée un tableau [1, 2, 3, 4, 5, 6, 7, 8, 9] ; num1, num2 et num3 ne sont pas modifiés
var nums = num1.concat(num2, num3);

[modifier] Exemple : ajout de valeurs à un tableau

Le code qui suit ajoute trois valeurs à un tableau :

var alpha = ['a', 'b', 'c'];

// crée un tableau ["a", "b", "c", 1, 2, 3], alpha n'étant pas modifié
var alphanumérique = alpha.concat(1, [2, 3]);