Curso Avanzado de JavaScript ES6
Generadores y Iteradores en ES6
Introducción a los Iteradores
Los iteradores son objetos que permiten recorrer colecciones de datos secuencialmente. En ES6, se introdujo el protocolo de iteración, que define cómo se deben construir los iteradores.
const iterable = {
[Symbol.iterator]() {
let step = 0;
return {
next() {
step++;
if (step === 1) {
return { value: 'Hola', done: false };
} else if (step === 2) {
return { value: 'Mundo', done: false };
}
return { value: undefined, done: true };
}
};
}
};
for (const value of iterable) {
console.log(value);
}
Generadores en JavaScript
Los generadores son funciones especiales que pueden pausar su ejecución y luego reanudarla. Se definen usando la sintaxis function*
y se controlan con la palabra clave yield
.
function* generador() {
yield 'Hola';
yield 'Mundo';
return '¡Adiós!';
}
const gen = generador();
console.log(gen.next().value); // 'Hola'
console.log(gen.next().value); // 'Mundo'
console.log(gen.next().value); // '¡Adiós!'
console.log(gen.next().done); // true
Preguntas
1 de 4
¿Qué es un iterador en JavaScript?
Proxies y Reflect en ES6
WeakMap y WeakSet en ES6
Programación Funcional en JavaScript ES6
Examen Final de JavaScript Avanzado