Comment ajouter quelque chose à un tableau?

2893

Comment ajouter un objet (tel qu'une chaîne ou un nombre) à un tableau en JavaScript?

interstar
la source

Réponses:

4394

Utilisez la Array.prototype.pushméthode pour ajouter des valeurs à un tableau:

// initialize array
var arr = [
  "Hi",
  "Hello",
  "Bonjour"
];

// append new value to the array
arr.push("Hola");

console.log(arr);


Vous pouvez utiliser la push()fonction pour ajouter plusieurs valeurs à un tableau en un seul appel:

// initialize array
var arr = ["Hi", "Hello", "Bonjour", "Hola"];

// append multiple values to the array
arr.push("Salut", "Hey");

// display all values
for (var i = 0; i < arr.length; i++) {
  console.log(arr[i]);
}


Mise à jour

Si vous souhaitez ajouter les éléments d'un tableau à un autre tableau, vous pouvez utiliser firstArray.concat(secondArray):

var arr = [
  "apple",
  "banana",
  "cherry"
];

arr = arr.concat([
  "dragonfruit",
  "elderberry",
  "fig"
]);

console.log(arr);

Mise à jour

Juste un ajout à cette réponse si vous souhaitez ajouter une valeur au début d'un tableau qui signifie au premier index, vous pouvez l'utiliser Array.prototype.unshiftà cette fin.

var arr = [1, 2, 3];
arr.unshift(0);
console.log(arr);

Il prend également en charge l'ajout de plusieurs valeurs à la fois, tout comme push.

Jack Bashford
la source
131
Notez que la valeur de retour de .push n'est pas le tableau (ou un nouveau, comme .concat), mais un entier représentant la nouvelle longueur du tableau.
Jay
8
@RST: ne pas utiliser fordu tout (utiliser .forEach).
Robert Siemer
34
Je dirais que le code d'origine est très bien. Il n'y a aucun besoin d'optimiser l'accès à la lengthpropriété. L'interprète fait un travail incroyable à cela et cela ne fera aucune différence dans The Real World, que vous l'optimisiez ou non. Si votre tableau devient si énorme que l'optimisation .lengthaiderait réellement, un tableau n'est probablement plus la bonne structure de données. L'utilisation forEacha ses avantages, mais il est très douteux que des performances accrues en soient un, car l'appel de fonction pour chaque itération entraîne un coût et n'économise rien.
Stijn de Witt
29
@RobertSiemer La lengthpropriété d'un tableau n'est pas calculée à chaque appel, c'est une variable stockée dans l' arrayobjet, qui n'est mise à jour que lorsque vous modifiez le tableau. Il n'y a donc en fait aucun coût de performance à inclure arr.lengthdans la forcondition.
mikeyq6
7
@Mojimi En tant que débutant, ignorez tous les conseils concernant les questions de performances dans les cas marginaux tels que celui-ci. Utilisez la syntaxe la plus expressive. Au fil du temps, les exécutions Javascript ajoutent de plus en plus d'optimisations - elles incorporeront forEachdes fonctions de rappel (certaines d'entre elles le font probablement déjà) et il n'y aura pas de différence dans le code machine généré, si la fonction est appelée assez souvent pour être compilée au lieu d'être interprétée par le runtime. Le même conseil vaut pour tout langage qui n'est pas assembleur, en fait.
Mörre
1041

Si vous ajoutez seulement une seule variable, cela push()fonctionne très bien. Si vous devez ajouter un autre tableau, utilisez concat():

var ar1 = [1, 2, 3];
var ar2 = [4, 5, 6];

var ar3 = ar1.concat(ar2);

alert(ar1);
alert(ar2);
alert(ar3);

Le concat n'affecte pas ar1et ar2sauf réattribution, par exemple:

var ar1 = [1, 2, 3];
var ar2 = [4, 5, 6];

ar1 = ar1.concat(ar2);
alert(ar1);

Beaucoup de bonnes informations ici .

MK_Dev
la source
163
S'assurer juste que les gens attrapent la var ar3 = ar1.concat (ar2); partie. ar1.concat (ar2) n'enregistre pas les valeurs dans ar1. Vous devez l'attraper en l'assignant à ar3 ou en revenant à ar1, comme: ar1 = ar1.concat (ar2);
vbullinger
31
Je dirais que c'est la mauvaise réponse en fait. La question était How do I append to an array in JavaScript?, mais crée enconcat fait un nouveau tableau. C'est une différence importante! Au lieu de cela, je dirais que la réponse ci-dessous d'Omnimike est en fait la meilleure: Utilisez Push.apply pour pousser un tableau entier vers un tableau existant sans en créer un nouveau.
Stijn de Witt
@StijndeWitt vous pouvez toujours ajouter sans créer un nouveau tableau, comme indiqué dans le commentaire précédent ar1 = ar1.concat(ar2);s'ajoutera àar1
cameronjonesweb
2
@cameronjonesweb En fait, ce qu'il fait est de créer un nouveau tableau avec le même contenu que ar1, d'ajouter ar2puis de renvoyer le nouveau tableau. Oubliez simplement la partie affectation ( ar1 = ...) de cette ligne de code et vous verrez que l' original ar1 n'a en fait pas changé. Si vous voulez éviter de faire une copie, vous en aurez besoin push. Ne me croyez pas, croyez les docs : "La méthode concat () retourne un nouveau tableau" Première phrase dans les docs pour concat.
Stijn de Witt
@StijndeWitt Vous avez raison. Mais, d'une manière différente pour le voir, .push ne fonctionne bien que pour ajouter des variables / objets uniques, mais gâchera cependant quand il s'agira d'ajouter des tableaux, ce qui ar2est de toute façon ci-dessus. Le résultat de .pushdans le scénario sera = [ar1, [ar2]]. .concat résout ce problème, mais en sacrifiant la vitesse et en créant un nouveau tableau. Pour l'utiliser .pushcorrectement dans les ajouts de tableaux, commencez par boucler l'élément contenu et poussez chacun. ar2.forEach(each => { ar1.push(each); });
Ade
408

Une analyse comparative rapide (chaque test = 500 000 éléments ajoutés et les résultats sont des moyennes de plusieurs exécutions) a montré ce qui suit:

Firefox 3.6 (Mac):

  • Petits tableaux: arr[arr.length] = best plus rapide (300 ms contre 800 ms)
  • Grands tableaux: arr.push(b)est plus rapide (500 ms contre 900 ms)

Safari 5.0 (Mac):

  • Petits tableaux: arr[arr.length] = best plus rapide (90 ms contre 115 ms)
  • Grands tableaux: arr[arr.length] = best plus rapide (160 ms contre 185 ms)

Google Chrome 6.0 (Mac):

  • Petits tableaux: aucune différence significative (et Chrome est RAPIDE! Seulement ~ 38 ms !!)
  • Grands tableaux: aucune différence significative (160 ms)

J'aime arr.push()mieux la syntaxe, mais je pense que je serais mieux avec la arr[arr.length]version, au moins en vitesse brute. J'adorerais voir les résultats d'une exécution IE cependant.


Mes boucles de benchmarking:

function arrpush_small() {
    var arr1 = [];
    for (a = 0; a < 100; a++)
    {
        arr1 = [];
        for (i = 0; i < 5000; i++)
        {
            arr1.push('elem' + i);
        }
    }
}

function arrlen_small() {
    var arr2 = [];
    for (b = 0; b < 100; b++)
    {
        arr2 = [];
        for (j = 0; j < 5000; j++)
        {
            arr2[arr2.length] = 'elem' + j;
        }
    }
}


function arrpush_large() {
    var arr1 = [];
    for (i = 0; i < 500000; i++)
    {
        arr1.push('elem' + i);
    }
}

function arrlen_large() {
    var arr2 = [];
    for (j = 0; j < 500000; j++)
    {
        arr2[arr2.length] = 'elem' + j;
    }
}
Jens Roland
la source
9
La question est de savoir si .length est une valeur stockée ou est calculé lors de l'accès, car si cette dernière est vraie, il se pourrait que l'utilisation d'une simple variable (telle que j) comme valeur d'index soit encore plus rapide
yoel halb
4
J'adorerais voir concat () dans le même test!
Justin
2
Je me demande combien cela a changé au cours des quatre dernières années. (jsperf serait pratique en ce moment.)
Paul Draper
8
Ce type d'analyse comparative est intéressant, mais ironiquement pas très utile pour rendre les applications plus rapides. La boucle de rendu est de loin beaucoup plus chère à n'importe quel cycle. De plus, ces composants internes du langage JS sont continuellement optimisés par les développeurs de navigateurs. C'est la raison de mon downvote, pas l'intérêt de cette réponse. Si vous voulez des applications plus rapides, comparez d'abord et voyez ce qu'il faut changer - 99 fois sur 100, ce ne sera pas un problème comme le montre ce test. Souvent, son pauvre développeur JS / CSS - pas les internes du navigateur qui le ralentissent.
LessQuesar
7
Je suis d'accord avec LessQuesar pour rester dans la mesure du possible. Non pas que la micro-optimisation soit mauvaise en soi, mais il a raison de dire que les navigateurs améliorent toujours la vitesse de leur moteur. Exemple: à ce jour, les performances par navigateur sont presque identiques pour toutes les techniques répertoriées ci-dessus. Cela fait beaucoup de bruit il y a quelques années pour un si petit gain, alors qu'il n'y a plus de gain.
Beejor
298

Je pense qu'il vaut la peine de mentionner que push peut être appelé avec plusieurs arguments, qui seront ajoutés au tableau dans l'ordre. Par exemple:

var arr = ['first'];
arr.push('second', 'third');
console.log(arr);

Par conséquent, vous pouvez utiliser push.apply pour ajouter un tableau à un autre tableau comme ceci:

var arr = ['first'];
arr.push('second', 'third');
arr.push.apply(arr, ['forth', 'fifth']);
console.log(arr);

ES5 annoté a plus d'informations sur ce que font exactement push and apply .

Mise à jour 2016: avec spread , vous n'en avez plus besoin apply, comme:

var arr = ['first'];
arr.push('second', 'third');

arr.push(...['fourth', 'fifth']);
console.log(arr) ;

Omnimike
la source
25
meilleure réponse pour ajouter un tableau d'éléments sans créer de nouveau tableau.
Gabriel Littman
1
@GabrielLittman Surtout parce que l'ajout à un tableau, à mon humble avis, devrait modifier le tableau, pas en créer un nouveau.
Juan Mendes
3
J'aime la version push.apply, je préfère Array.prototype.push.apply()cependant l' utiliser .
Michael
1
Parfois, il est important de conserver la référence à un tableau - par exemple dans AngularJs lorsqu'un tableau est à portée sur un contrôleur et qu'un service doit mettre à jour les données du tableau pour l'affichage. C'est pourquoi je vote pour cette solution.
voir
Cette réponse devrait vraiment être plus haut.
Anomalie
80

Vous pouvez utiliser pushet applyfonctionner pour ajouter deux tableaux.

var array1 = [11, 32, 75];
var array2 = [99, 67, 34];

Array.prototype.push.apply(array1, array2);
console.log(array1);

Il s'ajoutera array2à array1. array1Contient maintenant [11, 32, 75, 99, 67, 34]. Ce code est beaucoup plus simple que d'écrire des forboucles pour copier chaque élément du tableau.

Fizer Khan
la source
C'est ce dont j'avais besoin, conserver la référence d'origine du tableau
amit bakle
Si vous utilisez ES6 / 7, vous pouvez également l' ...opérateur au lieu d'appliquer const a1 = [] const a2 = [5,6,7] const.push(...a2) edit: coloration syntaxique
Mieszko
J'utiliserais array1.concat(array2)dans cette situation. L'appel à pushsemble inutile.
connectyourcharger
57

Avec le nouvel opérateur de diffusion ES6 , il pushest encore plus facile de joindre deux baies en utilisant :

var arr = [1, 2, 3, 4, 5];
var arr2 = [6, 7, 8, 9, 10];
arr.push(...arr2);
console.log(arr);

Cela ajoute le contenu de arr2à la fin de arr.

Exemple Babel REPL

CodingIntrigue
la source
47

Si arrest un tableau et valest la valeur que vous souhaitez ajouter, utilisez:

arr.push(val);

Par exemple

var arr = ['a', 'b', 'c'];
arr.push('d');
console.log(arr);

rjmunro
la source
45

Utilisation concat:

a = [1, 2, 3];
b = [3, 4, 5];
a = a.concat(b);
console.log(a);

Mαzen
la source
34

Javascript avec ECMAScript 5 standard qui est pris en charge par la plupart des navigateurs maintenant, vous pouvez utiliser apply()pour ajouter array1à array2.

var array1 = [3, 4, 5];
var array2 = [1, 2];

Array.prototype.push.apply(array2, array1);

console.log(array2); // [1, 2, 3, 4, 5]

Javascript avec la norme ECMAScript 6 qui est pris en charge par Chrome et FF et IE Edge, vous pouvez utiliser l' spreadopérateur:

"use strict";
let array1 = [3, 4, 5];
let array2 = [1, 2];

array2.push(...array1);

console.log(array2); // [1, 2, 3, 4, 5]

L' spreadopérateur remplacera array2.push(...array1);par array2.push(3, 4, 5);lorsque le navigateur réfléchit à la logique.

Point bonus

Si vous souhaitez créer une autre variable pour stocker tous les éléments des deux tableaux, vous pouvez le faire:

ES5 var combinedArray = array1.concat(array2);

ES6 const combinedArray = [...array1, ...array2]

L'opérateur d'étalement ( ...) doit étaler tous les éléments d'une collection.

Zhenyang Hua
la source
30

Si vous souhaitez ajouter deux tableaux -

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

alors vous pouvez utiliser:

var c = a.concat(b);

Et si vous voulez ajouter un enregistrement gà array ( var a=[]), vous pouvez utiliser:

a.push('g');
Pawan Singh
la source
25

La push()méthode ajoute de nouveaux éléments à la fin d'un tableau et renvoie la nouvelle longueur. Exemple:

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.push("Kiwi");

// The result of fruits will be:
Banana, Orange, Apple, Mango, Kiwi

La réponse exacte à votre question est déjà répondue, mais examinons d'autres façons d'ajouter des éléments à un tableau.

La unshift()méthode ajoute de nouveaux éléments au début d'un tableau et renvoie la nouvelle longueur. Exemple:

var fruits = ["Banana", "Orange", "Apple", "Mango"];
fruits.unshift("Lemon", "Pineapple");

// The result of fruits will be:
Lemon, Pineapple, Banana, Orange, Apple, Mango

Et enfin, la concat()méthode est utilisée pour joindre deux ou plusieurs tableaux. Exemple:

var fruits = ["Banana", "Orange"];
var moreFruits = ["Apple", "Mango", "Lemon"];
var allFruits = fruits.concat(moreFruits);

// The values of the children array will be:
Banana, Orange, Apple, Mango, Lemon
Peintures Maarten
la source
25

Il existe deux façons d'ajouter un tableau en JavaScript:

1) La push()méthode ajoute un ou plusieurs éléments à la fin d'un tableau et renvoie la nouvelle longueur du tableau.

var a = [1, 2, 3];
a.push(4, 5);
console.log(a);

Production:

[1, 2, 3, 4, 5]

2) La unshift()méthode ajoute un ou plusieurs éléments au début d'un tableau et renvoie la nouvelle longueur du tableau:

var a = [1, 2, 3];
a.unshift(4, 5);
console.log(a); 

Production:

[4, 5, 1, 2, 3]

3) La concat()méthode est utilisée pour fusionner deux tableaux ou plus. Cette méthode ne modifie pas les tableaux existants, mais renvoie à la place un nouveau tableau.

var arr1 = ["a", "b", "c"];
var arr2 = ["d", "e", "f"];
var arr3 = arr1.concat(arr2);
console.log(arr3);

Production:

[ "a", "b", "c", "d", "e", "f" ]

4) Vous pouvez utiliser la .lengthpropriété du tableau pour ajouter un élément à la fin du tableau:

var ar = ['one', 'two', 'three'];
ar[ar.length] = 'four';
console.log( ar ); 

Production:

 ["one", "two", "three", "four"]

5) La splice()méthode modifie le contenu d'un tableau en supprimant les éléments existants et / ou en ajoutant de nouveaux éléments:

var myFish = ["angel", "clown", "mandarin", "surgeon"];
myFish.splice(4, 0, "nemo");
//array.splice(start, deleteCount, item1, item2, ...)
console.log(myFish);

Production:

["angel", "clown", "mandarin", "surgeon","nemo"]

6) Vous pouvez également ajouter un nouvel élément à un tableau simplement en spécifiant un nouvel index et en attribuant une valeur:

var ar = ['one', 'two', 'three'];
ar[3] = 'four'; // add new element to ar
console.log(ar);

Production:

["one", "two","three","four"]
Inconnu
la source
Pour 1), cela signifie "sans modifier le tableau d'origine". Mais c'est littéralement ce qui pushfait: il modifie le tableau d'origine en y poussant de nouveaux éléments. Suis-je en train de mal lire, ou faut-il le modifier?
Phil Calvin
22

Maintenant, vous pouvez profiter de la syntaxe ES6 et faire simplement:

let array = [1, 2];
console.log([...array, 3]);

garder immuable le tableau d'origine.

José Antonio Postigo
la source
17

Si vous connaissez l'indice le plus élevé (tel que stocké dans une variable "i"), vous pouvez le faire

myArray[i + 1] = someValue;

Cependant, si vous ne savez pas, vous pouvez soit utiliser

myArray.push(someValue);

comme d'autres réponses le suggèrent, ou vous pouvez utiliser

myArray[myArray.length] = someValue; 

Notez que le tableau est basé sur zéro, donc .length renvoie l'index le plus élevé plus un.

Notez également que vous n'avez pas à ajouter dans l'ordre et que vous pouvez en fait ignorer les valeurs, comme dans

myArray[myArray.length + 1000] = someValue;

Dans ce cas, les valeurs intermédiaires auront une valeur indéfinie.

C'est donc une bonne pratique lorsque vous parcourez un JavaScript pour vérifier qu'une valeur existe réellement à ce point.

Cela peut être fait par quelque chose comme ceci:

if(myArray[i] === "undefined"){ continue; }

si vous êtes certain de ne pas avoir de zéros dans le tableau, vous pouvez simplement faire:

if(!myArray[i]){ continue; }

Bien sûr, assurez-vous dans ce cas que vous n'utilisez pas la condition myArray [i] (comme certaines personnes sur Internet le suggèrent en se basant sur le fait que dès que i est supérieur, l'index le plus élevé renvoie un indéfini qui évalue à faux)

yo hal
la source
En fait, tu ne veux pas dire "undefined". Il faut lire void 0! "undefined"est une chaîne et "undefined" !== void 0, par conséquent, votre if(myArray[i]est faux, sauf si le tableau à index iest défini sur la chaîne avec le contenu équivalent à 'u'+'n'+'d'+'e'+'f'+'i'+'n'+'e'+'d'. Notez également que vous ne devez pas utiliser undefined, utilisez plutôt void 0. Parce que c'est void 0toujours la valeur indéfinie, tandis que undefinedpeut être définie via quelque chose comme function x(undefined) { alert(undefined) } x("hello world"), donc vous ne pouvez pas être sûr si quelqu'un a accidentellement défini window["undefined"]=1ou similaire.
Tino
14

Ajouter un seul élément

//Append to the end
arrName.push('newName1');

//Prepend to the start
arrName.unshift('newName1');

//Insert at index 1
arrName.splice(1, 0,'newName1');
//1: index number, 0: number of element to remove, newName1: new element


// Replace index 3 (of exists), add new element otherwise.
arrName[3] = 'newName1';

Ajouter plusieurs éléments

//Insert from index number 1
arrName.splice(1, 0,'newElemenet1', 'newElemenet2', 'newElemenet3');
//1: index number from where insert starts, 
//0: number of element to remove, 
//newElemenet1,2,3: new elements

Ajouter un tableau

//join two or more arrays
arrName.concat(newAry1, newAry2);
//newAry1,newAry2: Two different arrays which are to be combined (concatenated) to an existing array
Srikrushna Pal
la source
1
Pourquoi ne pas arrName.push('newElemenet1, newElemenet2, newElemenet3')?
Mihail Malostanidis
1
Dans le push (), il insère l'élément en dernier, mais dans mon exemple, il insère l'élément au milieu, c'est-à-dire à partir de l'index du tableau 1 (selon l'exemple) @Mihail Malostanidis
Srikrushna
Oh, je pensais que l'hypothèse était arrNamelongue 1.
Mihail Malostanidis
11

concat(), bien sûr, peut également être utilisé avec des tableaux bidimensionnels. Aucune boucle requise.

var a = [[1, 2], [3, 4]];

var b = [["" a "," b "], [" c "," d "]];

b = b.concat (a);

alerte (b [2] [1]); // résultat 2

Karl
la source
10

Laissez la propriété array length faire le travail:

myarray[myarray.length] = 'new element value added to the end of the array';

myarray.length renvoie le nombre de chaînes du tableau. JS est basé sur zéro, donc la clé d'élément suivante du tableau sera la longueur actuelle du tableau. EX:

var myarray = [0, 1, 2, 3],
    myarrayLength = myarray.length; //myarrayLength is set to 4
hawkeye126
la source
9

Je veux juste ajouter un extrait pour l'ajout non destructif d'un élément.

var newArr = oldArr.concat([newEl]);
Danil Gaponov
la source
8

Ajouter une valeur à un tableau

Puisque Array.prototype.push ajoute un ou plusieurs éléments à la fin d'un tableau et renvoie la nouvelle longueur du tableau , parfois nous voulons simplement obtenir le nouveau tableau mis à jour afin que nous puissions faire quelque chose comme ceci:

const arr = [1, 2, 3];
const val = 4;

arr.concat([val]); // [1, 2, 3, 4]

Ou juste:

[...arr, val] // [1, 2, 3, 4]
Lior Elrom
la source
2
Corriger avec ES6 pour l'opérateur de repos.
monikapatelIT
7

Si vous utilisez l'ES6, vous pouvez utiliser l' opérateur d' étalement pour le faire.

var arr = [
    "apple",
    "banana",
    "cherry"
];

var arr2 = [
    "dragonfruit",
    "elderberry",
    "fig"
];

arr.push(...arr2);
JmLavoier
la source
7

vous pouvez le faire en utilisant la nouvelle fonctionnalité javascript Es 6:

// initialize array

var arr = [
    "Hi",
    "Hello",
    "Bangladesh"
];

// append new value to the array

arr= [...arr , "Feni"];

// or you can put a variable value

var testValue = "Cool";

arr = [...arr , testValue ];

console.log(arr); 

// final output  [ 'Hi', 'Hello', 'Bangladesh', 'Feni', 'Cool' ]
Hoque MD Zahidul
la source
1
Cela n'ajoute pas la valeur au tableau, ce que l'OP a demandé. Cela crée un nouveau tableau, avec le contenu de l'ancien tableau et les nouveaux éléments. Vraiment, c'est Array.concat.
Richard Matheson
5

si vous souhaitez combiner 2 tableaux sans le doublon, vous pouvez essayer le code ci-dessous

array_merge = function (arr1, arr2) {
  return arr1.concat(arr2.filter(function(item){
    return arr1.indexOf(item) < 0;
  }))
}

usage:

array1 = ['1', '2', '3']
array2 = ['2', '3', '4', '5']
combined_array = array_merge(array1, array2)

Sortie: [1,2,3,4,5]

Emil Reña Enriquez
la source
5

Ajouter un seul élément

Pour ajouter un seul élément à un tableau, utilisez la push()méthode fournie par l'objet Array:

const fruits = ['banana', 'pear', 'apple']
fruits.push('mango')
console.log(fruits)

push() mute le tableau d'origine.

Pour créer un nouveau tableau à la place, utilisez la concat()méthode Array:

const fruits = ['banana', 'pear', 'apple']
const allfruits = fruits.concat('mango')
console.log(allfruits)

Remarquerez que concat() n'ajoute pas réellement d'élément au tableau, mais crée un nouveau tableau, que vous pouvez affecter à une autre variable, ou réaffecter au tableau d'origine (en le déclarant comme let, car vous ne pouvez pas réaffecter a const):

const fruits = ['banana', 'pear', 'apple']
const allfruits = fruits.concat('mango')
console.log(allfruits)
let fruits = ['banana', 'pear', 'apple']
fruits = fruits.concat('mango')

Ajouter plusieurs éléments

Pour ajouter un élément multiple à un tableau, vous pouvez utiliser push() en l'appelant avec plusieurs arguments:

const fruits = ['banana', 'pear', 'apple']
fruits.push('mango', 'melon', 'avocado')
console.log(fruits)

Vous pouvez également utiliser le concat() méthode que vous avez vue précédemment, en passant une liste d'éléments séparés par une virgule:

const fruits = ['banana', 'pear', 'apple']
const allfruits = fruits.concat('mango', 'melon', 'avocado')
console.log(allfruits)

ou un tableau:

const fruits = ['banana', 'pear', 'apple']
const allfruits = fruits.concat(['mango', 'melon', 'avocado'])
console.log(allfruits)

N'oubliez pas que, comme décrit précédemment, cette méthode ne mute pas le tableau d'origine, mais elle renvoie un nouveau tableau.

Publié à l' origine sur

Flavio Copes
la source
4

Vous .push () cette valeur dans. Exemple: array.push (value);

Jayme
la source
4

Si vous souhaitez ajouter une seule valeur dans un tableau, utilisez simplement la méthode push. Il ajoutera un nouvel élément à la fin du tableau.

Mais si vous avez l'intention d'ajouter plusieurs éléments, stockez les éléments dans un nouveau tableau et concatendez le deuxième tableau avec le premier tableau ... comme vous le souhaitez.

arr=['a','b','c'];
arr.push('d');
//now print the array in console.log and it will contain 'a','b','c','d' as elements.
console.log(array);
Satyapriya Mishra
la source
2

Nous n'avons pas de fonction d'ajout pour Array en javascript, mais nous avons push et unshift , imaginez que vous avez le tableau ci-dessous:

var arr = [1, 2, 3, 4, 5];

et nous aimons ajouter une valeur à ce tableau, nous pouvons le faire, arr.push (6) et il ajoutera 6 à la fin du tableau:

arr.push(6); // return [1, 2, 3, 4, 5, 6];

nous pouvons également utiliser unshift, regardez comment nous pouvons appliquer ceci:

arr.unshift(0); //return [0, 1, 2, 3, 4, 5];

Ce sont des fonctions principales pour ajouter ou ajouter de nouvelles valeurs aux tableaux.

Alireza
la source
1

Vous pouvez utiliser la méthode push.

Array.prototype.append = function(destArray){
     destArray = destArray || [];
     this.push.call(this,...destArray);
     return this;
}
var arr = [1,2,5,67];
var arr1 = [7,4,7,8];
console.log(arr.append(arr1));// [7, 4, 7, 8, 1, 4, 5, 67, 7]
console.log(arr.append("Hola"))//[1, 2, 5, 67, 7, 4, 7, 8, "H", "o", "l", "a"]
Sanu Uthaiah Bollera
la source
0

push()ajoute un nouvel élément à la fin d'un tableau.
pop()supprime un élément de la fin d'un tableau.

Pour ajouter un objet (tel qu'une chaîne ou un nombre) à un tableau, utilisez -
array.push(toAppend);

Harunur Rashid
la source
0

Ajout d'éléments sur un tableau

let fruits =["orange","banana","apple","lemon"]; /*array declaration*/

fruits.push("avacado"); /* Adding an element to the array*/

/*displaying elements of the array*/

for(var i=0; i < fruits.length; i++){
  console.log(fruits[i]);
}
Ir Calif
la source
0

Vous pouvez utiliser le push () si vous souhaitez ajouter des valeurs par exemple arr.push("Test1", "Test2");

Si vous avez un tableau, vous pouvez utiliser concat (), par exemple Array1.concat(Array2)

Si vous n'avez qu'un seul élément à ajouter, vous pouvez également essayer la méthode de longueur, par exemple array[aray.length] = 'test';

Aditya
la source