Découpage d'itérables en tableaux plus petits

JavaScriptJavaScriptBeginner
Pratiquer maintenant

This tutorial is from open-source community. Access the source code

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce laboratoire, nous allons explorer le concept de découpage d'un itérable en tableaux plus petits d'une taille spécifiée à l'aide de JavaScript. Nous allons implémenter une fonction qui prend en entrée un itérable et un paramètre de taille et renvoie un itérable de tableaux plus petits qui contiennent au maximum size éléments chacun. Cette technique peut être utile pour diverses applications, telles que la division de grands ensembles de données en parties plus petites pour le traitement ou l'optimisation des requêtes réseau en réduisant la quantité de données transférées d'un coup.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL javascript(("JavaScript")) -.-> javascript/BasicConceptsGroup(["Basic Concepts"]) javascript(("JavaScript")) -.-> javascript/AdvancedConceptsGroup(["Advanced Concepts"]) javascript/BasicConceptsGroup -.-> javascript/variables("Variables") javascript/BasicConceptsGroup -.-> javascript/data_types("Data Types") javascript/BasicConceptsGroup -.-> javascript/arith_ops("Arithmetic Operators") javascript/BasicConceptsGroup -.-> javascript/comp_ops("Comparison Operators") javascript/BasicConceptsGroup -.-> javascript/cond_stmts("Conditional Statements") javascript/BasicConceptsGroup -.-> javascript/loops("Loops") javascript/BasicConceptsGroup -.-> javascript/obj_manip("Object Manipulation") javascript/AdvancedConceptsGroup -.-> javascript/spread_rest("Spread and Rest Operators") subgraph Lab Skills javascript/variables -.-> lab-28195{{"Découpage d'itérables en tableaux plus petits"}} javascript/data_types -.-> lab-28195{{"Découpage d'itérables en tableaux plus petits"}} javascript/arith_ops -.-> lab-28195{{"Découpage d'itérables en tableaux plus petits"}} javascript/comp_ops -.-> lab-28195{{"Découpage d'itérables en tableaux plus petits"}} javascript/cond_stmts -.-> lab-28195{{"Découpage d'itérables en tableaux plus petits"}} javascript/loops -.-> lab-28195{{"Découpage d'itérables en tableaux plus petits"}} javascript/obj_manip -.-> lab-28195{{"Découpage d'itérables en tableaux plus petits"}} javascript/spread_rest -.-> lab-28195{{"Découpage d'itérables en tableaux plus petits"}} end

Découper un itérable

Pour découper un itérable en tableaux plus petits d'une taille spécifiée, suivez ces étapes :

  1. Ouvrez le Terminal/SSH et tapez node pour commencer à pratiquer la programmation.
  2. Utilisez une boucle for...of sur l'itérable donné, en utilisant Array.prototype.push() pour ajouter chaque nouvelle valeur au chunk actuel.
  3. Vérifiez si le chunk actuel est de la size souhaitée en utilisant Array.prototype.length et yield la valeur si c'est le cas.
  4. Vérifiez le dernier chunk en utilisant Array.prototype.length et yield s'il n'est pas vide.
  5. Utilisez le code suivant :
const chunkify = function* (itr, size) {
  let chunk = [];
  for (const v of itr) {
    chunk.push(v);
    if (chunk.length === size) {
      yield chunk;
      chunk = [];
    }
  }
  if (chunk.length) yield chunk;
};
  1. Utilisez ce code pour tester la fonction :
const x = new Set([1, 2, 1, 3, 4, 1, 2, 5]);
[...chunkify(x, 2)]; // [[1, 2], [3, 4], [5]]

Résumé

Félicitations ! Vous avez terminé le laboratoire Découper un itérable. Vous pouvez pratiquer d'autres laboratoires dans LabEx pour améliorer vos compétences.