pour supprimer le premier et le dernier élément du tableau


102

Comment supprimer le premier et le dernier élément d'un tableau?

Par exemple:

var fruits = ["Banana", "Orange", "Apple", "Mango"];

Tableau de sortie attendu:

["Orange", "Apple"]

9
cela ressemble à une «balle molle» pour créer des liens vers w3schools, vous avez même utilisé les mêmes éléments de tableau. ;-)
Myster

Réponses:


142
fruits.shift();  // Removes the first element from an array and returns only that element.
fruits.pop();    // Removes the last element from an array and returns only that element. 

Voir toutes les méthodes pour un tableau.


C'est plus facile avec jQuery UImyArray.effect( "transfer", { item: 'first&&last', to: bin});
iConnor

3
Chers votants négatifs, vous voudrez peut-être que vos votes négatifs soient utiles, alors veuillez ajouter un commentaire expliquant ce qui ne va pas avec la réponse ..

3
Cela ne renverra que la valeur de l'élément supprimé (premier ou dernier), pas le tableau restant
Jubin Patel

@RC. Je veux juste informer l'utilisateur du travail réel de la fonction. Je questionne votre réponse.
Jubin Patel

2
Comme l'utilisateur utilise cette fonction de la même manière que vous l'écrivez, elle fonctionne définitivement comme un élément de suppression, MAIS si l'utilisateur écrit, return fruits.shift()elle ne retournera QUE ce premier élément, puis supprimera du tableau.
Jubin Patel

79

Crée une copie profonde de 1 niveau.

fruits.slice(1, -1)

Lâchez le tableau d'origine.

Merci à @Tim d'avoir signalé l'errata d'orthographe.


1
Je pense que tu veux dire slice()plutôt que splice().
Tim Down

71
Trancher des fruits est bien meilleur que de les éclater ou de les déplacer.
pettys

2
avec la popularité croissante de redux, javscript fonctionnel et choses immuables, cette réponse est bien meilleure
nkint

17

var fruits = ["Banana", "Orange", "Apple", "Mango"];
var newFruits = fruits.slice(1, -1);
console.log(newFruits); //  ["Orange", "Apple"];

Ici, -1 désigne le dernier élément d'un tableau et 1 désigne le deuxième élément.


Ou simplement fruits = fruits.slice(1,-1);si vous n'avez pas à créer une nouvelle variable.
Hastig Zusammenstellen

9

J'utilise la méthode d'épissure.

fruits.splice(0, 1); // Removes first array element

var lastElementIndex = fruits.length-1; // Gets last element index

fruits.splice(lastElementIndex, 1); // Removes last array element

Pour supprimer le dernier élément, vous pouvez également le faire de cette façon:

fruits.splice(-1, 1);

Voir Supprimer le dernier élément du tableau pour voir plus de commentaires à ce sujet.


4

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

unshift()ajoute un nouvel élément au début d'un tableau.
shift()supprime un élément du début d'un tableau.

Pour supprimer le premier élément d'un tableau arr, utilisez arr.shift()
Pour supprimer le dernier élément d'un tableau arr, utilisezarr.pop()



1

Pour supprimer un élément du tableau est facile, procédez comme suit

let array_splited = [].split('/');
array_splited.pop()
array_splited.join('/')

1

Cela peut être fait avec lodash _.tailet _.dropRight:

var fruits = ["Banana", "Orange", "Apple", "Mango"];
console.log(_.dropRight(_.tail(fruits)));
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.11/lodash.min.js"></script>


0
var resident_array =  ["RC_FRONT", "RC_BACK", "RC_BACK"];
var remove_item = "RC_FRONT";
resident_array = $.grep(resident_array, function(value) {
            return value != remove_item;
    });
resident_array = ["RC_BACK", "RC_BACK"];

Supprimez le premier élément du tableau.
vikas pal

0

Supposons que vous ayez un tableau nommé list. La fonction Splice () peut être utilisée à la fois pour ajouter et supprimer des éléments dans ce tableau dans un index spécifique, c'est-à-dire qui peut être au début ou à la fin ou à n'importe quel index. Au contraire, il existe un autre nom de fonction shift () et pop () qui est capable de supprimer uniquement le premier et le dernier élément du tableau.

C'est la fonction Shift qui n'est capable de supprimer que le premier élément du tableau

var item = [ 1,1,2,3,5,8,13,21,34 ]; // say you have this number series 
item.shift(); // [ 1,2,3,5,8,13,21,34 ];

La fonction Pop supprime l'élément d'un tableau à son dernier index

item.pop(); // [ 1,2,3,5,8,13,21 ];

Vient maintenant la fonction d'épissure par laquelle vous pouvez supprimer un élément à n'importe quel index

item.slice(0,1); // [ 2,3,5,8,13,21 ] removes the first object
item.slice(item.length-1,1); // [ 2,3,5,8,13 ] removes the last object 

La fonction slice accepte deux paramètres ( Index pour commencer , nombre d'étapes à parcourir );


-1

Vous avez utilisé la méthode Fruits.shift () pour supprimer le premier élément. La méthode Fruits.pop () utilisée pour le dernier élément supprime un par un si vous avez utilisé le clic de bouton. Fruits.slice (position de départ, élément de suppression) Vous avez également utilisé la méthode de tranche pour supprimer l'élément au début du milieu.


1
lisez ceci et formatez correctement votre réponse meta.stackexchange.com/questions/22186/…
isuruAb

-1

Pour supprimer le premier et le dernier élément d'un tableau est en utilisant intégré dans la méthode d'un à- dire de tableau shift()et pop()l' fruits.shift()obtenir le premier élément du tableau comme « Banana » alors fruits.pop()obtenir le dernier élément du tableau comme « Mango ». donc l'élément restant du tableau sera["Orange", "Apple"]


2
la réponse que vous avez donnée existe déjà dans cette question: ici et ici . Si vous pensez qu'ils ont besoin de plus d'explications, veuillez laisser un commentaire sous la réponse qui ne vous satisfait pas.
Skandix

1
Formater votre code vous aidera ( meta.stackexchange.com/questions/22186/… )! De plus, cette réponse semble identique à d'autres (par exemple, stackoverflow.com/a/43327999/608312 ).
Jake Lee

Noté @JakeSteam
chisom okoye
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.