127 votes

Comment diviser un tableau long en tableaux plus petits, avec JavaScript

J’ai un tableau d’e-mails (il peut s’agir de seulement 1 e-mail ou 100 e-mails), et je dois envoyer le tableau avec une requête ajax (que je sais faire), mais je ne peux envoyer qu’un tableau contenant 10 e-mails ou moins. Donc, s’il y a un tableau original de 20 e-mails, je devrai les diviser en 2 tableaux de 10 chacun. ou s’il y a 15 e-mails dans le tableau d’origine, puis 1 tableau de 10 et un autre tableau de 5. J’utilise jQuery, quelle serait la meilleure façon de le faire?

238voto

jyore Points 1449

N’utilisez pas jquery... utiliser du javascript simple

Vous pouvez boucler cela pour obtenir le comportement que vous souhaitez.

Cela vous donnerait 10 éléments à la fois... si vous avez disons 15 éléments, vous obtiendriez 1-10, le 11-15 comme vous le vouliez.

138voto

Blazemonger Points 39230
<pre><code></code><p><a href="https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Array/splice" rel="noreferrer"><code></code></a><a href="https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Array/slice" rel="noreferrer"><code></code></a> est non destructive pour le tableau d’origine.</p></pre>

48voto

Claudio Points 1371

Il suffit de boucler sur le tableau, en l’épissage jusqu’à ce qu’il soit tout consommé.

sortie

42voto

AlexParamonov Points 340

Vous pouvez utiliser lodash: https://lodash.com/docs

16voto

jfriend00 Points 152127

En supposant que vous ne souhaitez pas détruire le tableau d’origine, vous pouvez utiliser du code comme celui-ci pour diviser le long tableau en tableaux plus petits sur lesquels vous pouvez ensuite itérer :

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