Que sont les itérateurs en javascript

Que sont les itérateurs en javascript
JavaScript propose plusieurs façons d'itérer une collection de valeurs d'objet telles que des boucles. Cependant, Itérateurs sont introduits dans Javascript 1.7, qui fournit un mécanisme pour personnaliser le comportement de pour chaque et pour… dans Boucle et intègre le concept d'itération dans la langue centrale.

Si vous devez ajouter des fonctionnalités itératives natives à une structure de données bien encapsulée et personnalisée, vous devez utiliser des itérateurs JavaScript. Il peut être considéré comme un moyen plus élégant de standardiser vos objets personnalisés.

Cet article discutera itérateurs dans Javascrip. Nous démontrerons également l'utilisation des itérateurs, des itérables, de la méthode suivante () et des itérateurs définis par l'utilisateur. Alors, commençons!

Itération en javascript

En javascript, Itération est une procédure dans laquelle une collection de structures ou d'instructions est répétée dans une séquence pour un nombre prédéterminé de fois ou jusqu'à ce que la condition ajoutée soit vraie. Vous pouvez utiliser boucles pour itération sur l'ensemble d'instructions spécifié.

Par exemple, nous avons déclaré un tableau «compte"Et avec l'aide du"pour… de”Loop, nous allons itérer sur le tableau spécifié:

const Counting = [1, 2, 3];
pour (soit x de compter)
console.log (x);

À la suite de celui-ci, chaque valeur sera renvoyée et indiquée comme sortie:

Maintenant, consultons la méthode d'itération sur un objet JavaScript. À cette fin, premièrement, nous déclarerons un objet nommé «employé"Puis utilisez pour… de Boucle pour itérer sur ses propriétés:

const Employee = name: 'Alex', désignation: 'manager';
pour (const prop de l'employé)
console.log (prop);

Comme vous pouvez le voir, la sortie du code ci-dessus affiche un «Erreur-type»Message qui indique que le«employé"L'objet n'est pas itérable. Pourquoi ça arrive? Nous avons rencontré la SypeError parce que le pour… de boucle nécessite un objet itérable pour itération sur les propriétés de l'objet.

Pour gérer la situation actuelle, vous pouvez utiliser le protocole d'itération JavaScript, qui vous aidera à faire un objet itérable pour itérer sur ses propriétés.

Protocole d'itération JavaScript

JavaScript fournit un protocole d'itération pour itération des objets. Ce protocole spécifie la procédure d'itération en utilisant «pour… » boucle. Les itérateurs JavaScript sont divisés en deux composants: «Itérables" et "Itérateurs»:

  • Iterables: Les itérables sont les objets qui implémentent le «iterator ()«Méthode d'itération I.e. tableau ou chaîne.
  • Itérateurs: L'objet renvoyé par le «iterator ()"La méthode est connue sous le nom de"Itérateur". Après avoir obtenu l'itérateur, vous pouvez utiliser le «suivant()”Méthode pour accéder séquentiellement aux éléments itérables.

Il peut être difficile pour vous de comprendre l'utilisation de ces méthodes en un coup d'œil, nous allons donc passer séquentiellement chacun d'eux dans les sections en dessous.

Méthode suivante () en javascript

"suivant()«Est une méthode d'objet Iterator qui est invoquée pour renvoyer la valeur suivante dans la séquence d'itération. Cette méthode comprend les deux propriétés suivantes:

  • Le "valeur»La propriété représente la valeur actuelle dans la séquence d'itération, et elle peut être de n'importe quel type de données.
  • Le "fait«La propriété est utilisée pour représenter le statut d'itération, où«FAUX"Signifie que l'itération n'est pas complète et«vrai»Indique que le processus d'itération est terminé.

Définissons un itérateur personnalisé en JavaScript et accédons aux éléments d'un tableau séquentiellement à l'aide de la méthode Next ().

Création d'un itérateur défini par l'utilisateur dans JavaScript

JavaScript vous permet de créer un itérateur défini par l'utilisateur et d'invoquer le "suivant()»Méthode pour accéder aux éléments de l'objet itérable.

Ici, nous avons défini le «showelement ()«Méthode et il renverra le«valeur" et "fait«Propriété de l'objet itérable qui est accepté comme un argument:

fonction showelements (arr)
Selt Number = 0;
retour
suivant()
si (nombre < array.length)
retour
Valeur: Array [Numéro ++],
fait: faux

retour
Valeur: indéfini,
fait: true


Dans la prochaine étape, nous créerons un «déployer"Et puis le passer au"showelement ()«Méthode comme argument. Puis le "showelements ()«La méthode renverra un objet itérable, auquel nous stockons dans«arrièreur»:

const array = ['l', 'i', 'n', 'u', 'x'];
const Arteritator = showElements (array);

Maintenant, chaque fois que le «suivant()«La méthode est invoquée par le«arrièreur», Il affichera les valeurs de l'élément de tableau dans une séquence avec le« défini «valeur" et "fait" propriétés:

console.Journal (argent.suivant());
console.Journal (argent.suivant());
console.Journal (argent.suivant());
console.Journal (argent.suivant());
console.Journal (argent.suivant());
console.Journal (argent.suivant());

Lorsque tous les éléments sont itérés, le «valeur«La valeur de la propriété sera définie sur«indéfini", avec "fait«Propriété comme«vrai»:

La sortie donnée ci-dessus signifie que nous avons créé et exécuté avec succès un itérateur défini par l'utilisateur dans notre programme en utilisant la méthode Next (). Maintenant, comprenons également le concept d'itérables et ayons une compréhension claire et profonde de Symbole.iterator () en javascript

Exemple: Création des itérateurs à partir des iterables en utilisant le symbole.Méthode Iterator () en javascript
Dans cet exemple, premièrement, nous déclarerons un tableau avec les trois valeurs suivantes:

const Ar1 = [«l», «i», «n», «u», «x»];

Ensuite, nous invoquerons le «Symbole.iterator ()«Méthode qui renverra un objet itérable et«arrièreur»Conservera sa valeur:

Const Arritator = Arr1 [Symbole.iterator] ();
console.journal (artritateur);

L'exécution du programme ci-dessus sortira les itérateurs du tableau:

Exemple: Utilisation de la méthode Next () sur un objet itérable dans JavaScript
Cet exemple démontrera l'utilisation de «suivant()”Méthode pour itérer sur un objet itérable. Pour ce faire, premièrement, nous créerons un «déployer"Et puis invoque le"Symbole.iterator ()”Méthode pour retourner un objet itérable:

const array = ['l', 'i', 'n', 'u', 'x'];
Soit Arritier = Array [Symbole.iterator] ();

Invoquant le «suivant()"Renvoie également un objet ayant"valeur" et "fait»Valeurs de propriétés:

console.Journal (argent.suivant());
console.Journal (argent.suivant());
console.Journal (argent.suivant());
console.Journal (argent.suivant());
console.Journal (argent.suivant());
console.Journal (argent.suivant());

À la fin de la séquence d'itération, le «fait«Propriété du«suivant()"La méthode est définie sur"FAUX»:

Exemple: itérer à travers itérables avec une boucle en javascript
Le symbole.iterator () la méthode est automatiquement appelée par le pour… de la boucle. Si vous souhaitez l'invoquer manuellement, vous pouvez utiliser le «alors que”Boucle pour itérer sur l'objet itérable spécifié.

Par exemple, dans l'exemple ci-dessous, nous utiliserons le «alors que”Boucle pour itérer sur les objets itérables renvoyés par le«Symbole.iterator ()" méthode:

const array = ['l', 'i', 'n', 'u', 'x'];
Soit Arritier = Array [Symbole.iterator] ();
Laissez Text = ""
while (true)
const Résultat = argent.suivant();
si (résultat.fait) casser;
console.journal ("valeur:" + résultat.Valeur + "Terminé:" + Résultat.fait);

Ici, la sortie montre le résultat retourné avec "valeur" et "fait«Propriétés de l'itérateur:

Regardez le diagramme suivant pour comprendre la relation entre les iterables, la méthode suivante () et les itérateurs en javascript:

Il s'agissait de l'utilisation de base des itérateurs en javascript. Vous pouvez l'explorer davantage en fonction de vos préférences.

Conclusion

Les itérateurs en JavaScript sont utilisés pour faire boucle sur une séquence de valeurs d'objet renvoyées par le symbole.Méthode Iterator (). Ce processus implique également la mise en œuvre de la méthode suivante () qui renvoie un objet avec les propriétés de valeur et de réalisation, où «valeur»Représente la valeur de séquence actuelle et«fait»Détermine si l'itération est terminée ou non. Cet article a discuté des itérateurs JavaScript à l'aide d'exemples appropriés.