Explorer les générateurs JavaScript : itération cyclique sur un tableau

Beginner

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

Introduction

Dans ce laboratoire, nous allons explorer le concept de générateurs en JavaScript et apprendre à créer un générateur de cycle qui boucle indéfiniment sur un tableau. Nous utiliserons le mot-clé yield et une boucle while pour créer le générateur, puis le tester avec différents tableaux pour voir comment il fonctionne. À la fin de ce laboratoire, vous aurez une compréhension plus approfondie des générateurs et de la manière dont ils peuvent être utilisés dans vos projets JavaScript.

Instructions pour le générateur de cycle

Pour commencer à pratiquer la programmation, ouvrez le Terminal/SSH et tapez node. Ensuite, créez un générateur qui boucle indéfiniment sur le tableau donné. Voici les étapes :

  1. Utilisez une boucle while non terminante qui yield une valeur chaque fois que Generator.prototype.next() est appelé.
  2. Utilisez l'opérateur modulo (%) avec Array.prototype.length pour obtenir l'index de la prochaine valeur et incrémenter le compteur après chaque instruction yield.

Voici un exemple de la fonction cycleGenerator :

const cycleGenerator = function* (arr) {
  let i = 0;
  while (true) {
    yield arr[i % arr.length];
    i++;
  }
};

Vous pouvez ensuite utiliser la fonction comme suit :

const binaryCycle = cycleGenerator([0, 1]);
binaryCycle.next(); // { value: 0, done: false }
binaryCycle.next(); // { value: 1, done: false }
binaryCycle.next(); // { value: 0, done: false }
binaryCycle.next(); // { value: 1, done: false }

Avec ces instructions, vous pouvez créer un générateur de cycle qui boucle indéfiniment sur n'importe quel tableau.

Sommaire

Félicitations ! Vous avez terminé le laboratoire sur le Générateur de cycle. Vous pouvez pratiquer d'autres laboratoires sur LabEx pour améliorer vos compétences.