48 votes

diviser un tableau en deux en fonction d'un index en javascript

J'ai un tableau avec une liste d'objets. Je veux diviser ce tableau à un indice particulier, disons 4 (il s'agit en réalité d'une variable). Je veux stocker la deuxième partie du tableau divisé dans un autre tableau. C'est peut-être simple, mais je suis incapable de penser à une bonne façon de le faire.

86voto

TJHeuvel Points 7364

Utilisez slice , en tant que tel :

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

var p1 = ar.slice(0,4);
var p2 = ar.slice(4);

21voto

Mark Amery Points 4705

Vous pouvez utiliser Array@splice pour couper tous les éléments après un index spécifié à la fin du tableau et les renvoyer :

 x = ["a", "b", "c", "d", "e", "f", "g"];
y = x.splice(3);
console.log(x); // ["a", "b", "c"]
console.log(y); // ["d", "e", "f", "g"]

5voto

mamoo Points 6151

utiliser la tranche :

 var bigOne = [0,1,2,3,4,5,6];
var splittedOne = bigOne.slice(3 /*your Index*/);

3voto

Asif J Points 787

Je recommanderais d'utiliser slice() comme ci-dessous

ar.slice(startIndex,length); ou ar.slice(startIndex);

 var ar = ["a","b","c","d","e","f","g"];

var p1 = ar.slice(0,3);
var p2 = ar.slice(3);

console.log(p1);
console.log(p2);

1voto

Michał Wojas Points 106

Une fonction simple de lodash : const mainArr = [1,2,3,4,5,6,7] const [arr1, arr2] = _.chunk(mainArr, _.round(mainArr.length / 2));

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X