⊗jsSpItGn 63 of 294 menu

Generadores en JavaScript

Existen funciones especiales, con las cuales se pueden crear sus propios iteradores. Estas funciones se llaman generadores. Los nombres de estas funciones deben comenzar con un asterisco:

function *func() { }

Dentro de los generadores se utiliza la palabra clave yield, que indica lo que el iterador debe devolver en la siguiente llamada. Como ejemplo hagamos que la primera llamada devuelva 1, la segunda - 2, y la tercera - 3:

function *func() { yield 1; yield 2; yield 3; }

El generador devuelve como resultado un iterador:

let iter = func();

Comprobemos el funcionamiento de nuestro iterador:

console.log(iter.next()); // {value: 1, done: false} console.log(iter.next()); // {value: 2, done: false} console.log(iter.next()); // {value: 3, done: false} console.log(iter.next()); // {value: undefined, done: true}

Cree un iterador, cada llamada del cual devuelva números del 5 al 1.

rohuptensv