Une introduction aux itérateurs et générateurs en JavaScript

Depuis 2015, EcmaScript6 (ES6) a apporté de nombreuses avancées dans les pratiques de codage JavaScript. De nombreux concepts modernes ont été introduits dans JavaScript, améliorant considérablement l'expérience de codage. Dans cet article, vous découvrirez les itérateurs et les générateurs en JavaScript.

Les itérateurs et les générateurs sont deux concepts différents, mais ils sont utilisés de manière similaire. Ils sont utilisés pour parcourir des tableaux et des objets en JavaScript.

Itérateurs

Les itérateurs sont comme des boucles avancées qui peuvent être mises en pause. Les itérateurs sont constitués de la fonction next() , qui renvoie la valeur et l'état terminé. Le champ value est la valeur du tableau à un index donné. done est la valeur booléenne qui renvoie l'état d'achèvement de l'itération dans la boucle.

Voici un exemple qui montre comment les itérateurs :

function fruitIter(fruits){ let index = 0; return { next: function(){ return index < fruits.length="" {="" value:="" fruits[index++],="" done:="" false="" }="" :="" {done:=""> } } } const fruitsArray = ["Mango", "Banana", "Grapes"]; const fruits = fruitIter(fruitsArray); console.log(fruits.next().value);

Sortie :

Mangue

Lorsque vous passez le tableau fruitsArray dans la méthode fruitIter() , il renvoie un itérateur qui est stocké dans la variable fruits . La variable d' index dans la méthode fruitIter() est initialisée à 0. Cette méthode renvoie la fonction next() qui aide à parcourir le tableau en boucle . La fonction next() vérifie si l'index est inférieur à la longueur fruitsArray . Si tel est le cas, il renvoie deux variables : le nom du fruit à cet index et l' état terminé . Lors du renvoi de ces valeurs, il incrémente également la valeur de l'index.

Pour vérifier le fonctionnement de cette méthode et imprimer le nom du fruit, vous devez appeler la fonction next() sur l' itérateur de fruits et accéder à sa valeur.

Connexe : Qu'est-ce qu'une fonction dans la programmation ?

Générateurs

Les générateurs sont similaires aux itérateurs mais ils renvoient plusieurs valeurs. Ces valeurs sont appelées valeurs de rendement. Les fonctions génératrices sont écrites à l'aide de la syntaxe function* . * indique que ce n'est pas une fonction normale, mais un générateur. Voici un exemple de générateurs :

function* printFruits(){ yield "Mango"; yield "Banana"; yield "Grapes"; } const fruit = printFruits(); console.log(fruit.next());

Sortie :

{valeur : 'Mango', done : false}

Dans cet exemple, yield est l'itérateur. Lorsque vous appelez la fonction printFruits() et print fruit.next() , cela vous donne un objet dont vous obtenez la valeur. L' état terminé indique si toutes les valeurs ont été itérées.

Apprendre les structures de données à l'aide des classes ES6 en JavaScript

JavaScript ES6 a apporté beaucoup de progrès dans les pratiques de codage. La construction de structures de données à l'aide des classes ES6 n'est pas la moindre. Pousser. pop, et empile ton chemin jusqu'au sommet et deviens un pro de JavaScript !


Comment utiliser Python comme calculatrice de ligne de commande

Comment utiliser Python comme calculatrice de ligne de commande

Bien que vous puissiez utiliser une calculatrice graphique sur votre ordinateur, l'interpréteur du langage de programmation Python peut également servir de calculatrice de bureau. C'est une blague si populaire dans la communauté Python qu'elle est mentionnée dans le didacticiel officiel. Voici comment vous pouvez utiliser Python comme calculatrice.

Les 8 meilleurs blogs Java pour les programmeurs

Les 8 meilleurs blogs Java pour les programmeurs

En tant que programmeur, vous devez relever des défis pour survivre et créer des merveilles dans le domaine du développement ou de la programmation. Par conséquent, si vous cherchez à apprendre un langage de programmation avancé pour améliorer vos compétences professionnelles, Java est l'une des meilleures perspectives.

7 commandes vitales pour démarrer avec Python pour les débutants

7 commandes vitales pour démarrer avec Python pour les débutants

Apprendre un nouveau langage de programmation comme Python devient facile si vous disposez d'une feuille de route complète détaillant les concepts à apprendre en tant que débutant et comment progresser davantage pour atteindre le prochain jalon. Même les programmeurs intermédiaires devraient fréquemment réviser leurs bases pour se construire une base solide.

Principes de conception de sites Web réactifs

Principes de conception de sites Web réactifs

De nos jours, il est courant de créer un site Web ou une application qui ajuste son interface utilisateur en fonction du navigateur ou de l'appareil. Il existe deux approches pour atteindre cet objectif. La première consiste à créer différentes versions de votre site Web ou de votre application pour différents appareils. Mais c'est inefficace et peut conduire à des erreurs imprévisibles.

Comment compter le nombre de chiffres dans un nombre à laide de C++, Python et JavaScript

Comment compter le nombre de chiffres dans un nombre à laide de C++, Python et JavaScript

Travailler avec des nombres fait partie intégrante de la programmation. Chaque langage de programmation prend en charge la manipulation des nombres de différentes manières. Dans cet article, vous apprendrez à trouver le nombre total de chiffres dans un entier à l'aide d'approches itératives, basées sur les journaux et basées sur les chaînes.

Les 9 meilleures alternatives Docker pour la gestion des conteneurs

Les 9 meilleures alternatives Docker pour la gestion des conteneurs

Les conteneurs sont très utiles pour le développement, le déploiement et la gestion de logiciels dans un environnement virtuel. Docker est utile dans le processus de conteneurisation, mais ce n'est pas la seule plate-forme disponible. Si vous recherchez des alternatives à Docker, ne cherchez pas plus loin. Cette liste présente des alternatives Docker riches en fonctionnalités et efficaces à utiliser dans votre prochain projet.

SQL vs NoSQL : quelle est la meilleure base de données pour votre prochain projet ?

SQL vs NoSQL : quelle est la meilleure base de données pour votre prochain projet ?

SQL vs NoSQL : quelle est la meilleure base de données pour votre prochain projet ?

Comment intégrer des tweets dans vos publications WordPress

Comment intégrer des tweets dans vos publications WordPress

L'intégration de services tiers dans vos publications WordPress est un moyen passionnant de captiver l'intérêt d'un visiteur. Le contenu intégré fournit également des repères visuels qui facilitent la numérisation. WordPress a facilité l'ajout de ce type de contenu.

Comment supprimer le dossier des modules de nœud avec npkill

Comment supprimer le dossier des modules de nœud avec npkill

Node.js est un environnement d'exécution JavaScript qui vous permet d'exécuter JavaScript en dehors des navigateurs Web, ce qui en fait un choix populaire pour développer toutes sortes d'applications. Une partie de sa popularité est due à la pléthore de packages NPM disponibles pour faciliter l'expérience des développeurs.

Comment écrire et compiler votre premier code de solidité

Comment écrire et compiler votre premier code de solidité

Solidity est le langage de programmation utilisé par les contrats intelligents sur la blockchain Ethereum. C'est un langage de programmation orienté objet de type statique.

Top 5 des badges qui vont booster votre dépôt GitHub

Top 5 des badges qui vont booster votre dépôt GitHub

Les badges GitHub peuvent améliorer la lisibilité d'un référentiel en offrant aux utilisateurs un moyen rapide de capturer les métriques du référentiel. Des badges peuvent être intégrés dans votre README.md pour clarifier l'importance et la nécessité de votre projet aux autres développeurs. En conséquence, les lecteurs se font une idée très rapide du référentiel en vérifiant les badges joints.

Quest-ce que la Journée internationale des programmeurs ? 3 façons de célébrer cette année

Quest-ce que la Journée internationale des programmeurs ? 3 façons de célébrer cette année

Les journées de célébration internationales sont un bon moyen de reconnaître les questions sociales, les journées historiques et les carrières respectives. La Journée internationale des programmeurs célèbre le rôle que les programmeurs jouent pour améliorer la vie quotidienne. Le monde civilisé dans lequel nous vivons est le produit du travail acharné des programmeurs.

Comment fonctionne la méthode Python String format() ? 10 exemples

Comment fonctionne la méthode Python String format() ? 10 exemples

Qu'il s'agisse d'une requête de base de données ou de résultats d'opérations mathématiques, la méthode de format de chaîne Python offre un moyen plus dynamique et attrayant de présenter les résultats à un utilisateur.

Visual Studio 2022 vs. 2019 : devriez-vous mettre à niveau maintenant ? Expliqué

Visual Studio 2022 vs. 2019 : devriez-vous mettre à niveau maintenant ? Expliqué

Plus tôt cette année, Microsoft a publié la version préliminaire de Visual Studio 2022 dans le monde de la programmation sauvage. C'est une bonne nouvelle! C'est un IDE extrêmement populaire, mais qui doit faire l'objet d'une mise au point ou peut-être même d'une refonte, étant donné le rythme des changements dans l'écosystème DevOps dans lequel il prospère.

Une introduction simple aux métriques logicielles

Une introduction simple aux métriques logicielles

Les métriques logicielles sont des mesures utilisées pour quantifier divers aspects de votre logiciel. Ces aspects peuvent aller du coût, de la qualité et de l'efficacité de l'équipe de développement.

Comment installer .NET Framework version 3.5 sur Windows 10

Comment installer .NET Framework version 3.5 sur Windows 10

En tant qu'utilisateur Windows, vous avez probablement au moins une fois rencontré les mots .NET Framework. Il s'agit d'un framework logiciel développé par Microsoft qui vous permet de créer et d'exécuter des programmes C#, C++, F# et Visual Basic. La dernière version de .NET est la 4.8, mais votre ordinateur peut avoir besoin d'une ancienne version de .NET (comme .NET 3.5) pour exécuter certaines applications.

Flask ou CherryPy : quel framework Python devriez-vous utiliser ?

Flask ou CherryPy : quel framework Python devriez-vous utiliser ?

Si vous êtes un développeur Python, vous pouvez grandement bénéficier de la gamme de frameworks disponibles. Alors que certains cadres sont mieux adaptés aux grands écosystèmes, d'autres se spécialisent dans la réalisation d'objectifs de développement spécifiques. Lisez la suite pour découvrir les fonctionnalités de base, les utilisations et les différences entre deux frameworks Python : Flask et CherryPy.

Comment trouver des cubes et des carrés parfaits à N-Digit à laide de Python, C++ et JavaScript

Comment trouver des cubes et des carrés parfaits à N-Digit à laide de Python, C++ et JavaScript

De nombreux programmeurs adorent résoudre des problèmes mathématiques délicats à l'aide de code. Il aide à aiguiser l'esprit et à améliorer les compétences en résolution de problèmes. Dans cet article, vous apprendrez à trouver les carrés et cubes parfaits à n chiffres les plus petits et les plus grands à l'aide de Python, C++ et JavaScript. Chaque exemple contient également un exemple de sortie pour plusieurs valeurs différentes.

Comment ajouter Python à la variable PATH de Windows

Comment ajouter Python à la variable PATH de Windows

L'exécution de Python à partir du terminal est souvent inévitable. Cependant, si vous venez d'installer Python sur Windows 10 pour la première fois, son exécution via le terminal Windows n'est possible que s'il est ajouté à la variable d'environnement Windows PATH.

Comment utiliser linstruction Python if

Comment utiliser linstruction Python if

L'instruction if est la force motrice de la programmation logique. En conséquence, une meilleure compréhension des Pythons est un ajout important à vos compétences en programmation Python.

Comment utiliser Python comme calculatrice de ligne de commande

Comment utiliser Python comme calculatrice de ligne de commande

Bien que vous puissiez utiliser une calculatrice graphique sur votre ordinateur, l'interpréteur du langage de programmation Python peut également servir de calculatrice de bureau. C'est une blague si populaire dans la communauté Python qu'elle est mentionnée dans le didacticiel officiel. Voici comment vous pouvez utiliser Python comme calculatrice.

Les 8 meilleurs blogs Java pour les programmeurs

Les 8 meilleurs blogs Java pour les programmeurs

En tant que programmeur, vous devez relever des défis pour survivre et créer des merveilles dans le domaine du développement ou de la programmation. Par conséquent, si vous cherchez à apprendre un langage de programmation avancé pour améliorer vos compétences professionnelles, Java est l'une des meilleures perspectives.

7 commandes vitales pour démarrer avec Python pour les débutants

7 commandes vitales pour démarrer avec Python pour les débutants

Apprendre un nouveau langage de programmation comme Python devient facile si vous disposez d'une feuille de route complète détaillant les concepts à apprendre en tant que débutant et comment progresser davantage pour atteindre le prochain jalon. Même les programmeurs intermédiaires devraient fréquemment réviser leurs bases pour se construire une base solide.

Principes de conception de sites Web réactifs

Principes de conception de sites Web réactifs

De nos jours, il est courant de créer un site Web ou une application qui ajuste son interface utilisateur en fonction du navigateur ou de l'appareil. Il existe deux approches pour atteindre cet objectif. La première consiste à créer différentes versions de votre site Web ou de votre application pour différents appareils. Mais c'est inefficace et peut conduire à des erreurs imprévisibles.

Comment compter le nombre de chiffres dans un nombre à laide de C++, Python et JavaScript

Comment compter le nombre de chiffres dans un nombre à laide de C++, Python et JavaScript

Travailler avec des nombres fait partie intégrante de la programmation. Chaque langage de programmation prend en charge la manipulation des nombres de différentes manières. Dans cet article, vous apprendrez à trouver le nombre total de chiffres dans un entier à l'aide d'approches itératives, basées sur les journaux et basées sur les chaînes.

Les 9 meilleures alternatives Docker pour la gestion des conteneurs

Les 9 meilleures alternatives Docker pour la gestion des conteneurs

Les conteneurs sont très utiles pour le développement, le déploiement et la gestion de logiciels dans un environnement virtuel. Docker est utile dans le processus de conteneurisation, mais ce n'est pas la seule plate-forme disponible. Si vous recherchez des alternatives à Docker, ne cherchez pas plus loin. Cette liste présente des alternatives Docker riches en fonctionnalités et efficaces à utiliser dans votre prochain projet.

SQL vs NoSQL : quelle est la meilleure base de données pour votre prochain projet ?

SQL vs NoSQL : quelle est la meilleure base de données pour votre prochain projet ?

SQL vs NoSQL : quelle est la meilleure base de données pour votre prochain projet ?

Comment intégrer des tweets dans vos publications WordPress

Comment intégrer des tweets dans vos publications WordPress

L'intégration de services tiers dans vos publications WordPress est un moyen passionnant de captiver l'intérêt d'un visiteur. Le contenu intégré fournit également des repères visuels qui facilitent la numérisation. WordPress a facilité l'ajout de ce type de contenu.

Comment supprimer le dossier des modules de nœud avec npkill

Comment supprimer le dossier des modules de nœud avec npkill

Node.js est un environnement d'exécution JavaScript qui vous permet d'exécuter JavaScript en dehors des navigateurs Web, ce qui en fait un choix populaire pour développer toutes sortes d'applications. Une partie de sa popularité est due à la pléthore de packages NPM disponibles pour faciliter l'expérience des développeurs.

Comment écrire et compiler votre premier code de solidité

Comment écrire et compiler votre premier code de solidité

Solidity est le langage de programmation utilisé par les contrats intelligents sur la blockchain Ethereum. C'est un langage de programmation orienté objet de type statique.