Maison  >  Article  >  interface Web  >  Que signifie le générateur es6 ?

Que signifie le générateur es6 ?

WBOY
WBOYoriginal
2022-03-30 17:46:451408parcourir

Dans es6, un générateur est une fonction qui définit un itérateur. L'appel de la fonction générateur peut renvoyer un objet itérable ; il y a un signe "*" entre la fonction et le nom de la fonction dans le générateur, et le rendement est utilisé à l'intérieur de la fonction. body Expression, la syntaxe est "function*gen(){yield1;yield2;}".

Que signifie le générateur es6 ?

L'environnement d'exploitation de ce tutoriel : système Windows 10, ECMAScript version 6.0, ordinateur Dell G3.

Que signifie le générateur es6 ?

Un générateur est une fonction utilisée pour définir des itérateurs dans Es6. Nous pouvons le comprendre de cette façon : ce que le générateur génère finalement est un itérateur.

Generator est un nouveau type de données introduit par la norme ES6.

Un générateur ressemble à une fonction, mais peut revenir plusieurs fois. Il existe deux différences entre la fonction

générateur et les fonctions ordinaires

  • 1 : Il y a un signe * entre la fonction et le nom de la fonction

  • 2 : L'expression de rendement est utilisée à l'intérieur du corps de la fonction

  • .

Appeler pour générer La fonction générateur est différente de l'appel d'une fonction ordinaire. L'appel de la fonction générateur renvoie un objet générateur (un objet itérable). Générateur : il existe une interface itérateur dans le générateur, ce qui signifie que le générateur lui-même peut être itéré. . Autrement dit, créer un générateur équivaut à créer un itérateur. Concernant l'utilisation de générateurs, pour certains types de données qui n'ont pas d'interface itérateur, nous pouvons utiliser un générateur pour personnaliser un itérateur pour l'itération.

Ce qui précède est ma compréhension du générateur lui-même. La syntaxe spécifique sera expliquée ci-dessous.

Quelques attributs du générateur

//生成器的声明
<script>
function* generator(){
  }
let test = generator();
 console.log(test);
</script>
//生成器中的yield关键字
<script>
    function* Generator(){
      yield 100;
      yield 200;
      yield 300;
      yield 400;
    }
    let test = Generator();
    console.log(test.next());
    console.log(test.next());
    console.log(test.next());
    console.log(test.next());
    console.log(test.next());
    console.log(test.next());
    console.log(test.next());
  </script>
Résultat final :

Que signifie le générateur es6 ?Analyse : Puisque next() existe dans le prototype de l'objet instancié du générateur, lorsque next() est exécuté, l'itération sera basée sur le rendement.

【Recommandations associées :

tutoriel vidéo javascript

, front-end web

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn