Skip to content

Commit acaba5d

Browse files
authored
Merge pull request #528 from joaquinelio/susy210715
Susy210715
2 parents 764ba75 + 2ff4f4f commit acaba5d

1 file changed

Lines changed: 22 additions & 0 deletions

File tree

  • 1-js/12-generators-iterators/1-generators

1-js/12-generators-iterators/1-generators/article.md

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -448,6 +448,28 @@ try {
448448

449449
Si no detectamos el error allí, entonces, como de costumbre, pasa al código de llamada externo (si lo hay) y, si no se detecta, mata el script.
450450

451+
## generator.return
452+
453+
`generator.return(value)` detiene la ejecución de generator y devuelve el valor `value` dado.
454+
455+
```js
456+
function* gen() {
457+
yield 1;
458+
yield 2;
459+
yield 3;
460+
}
461+
462+
const g = gen();
463+
464+
g.next(); // { value: 1, done: false }
465+
g.return('foo'); // { value: "foo", done: true }
466+
g.next(); // { value: undefined, done: true }
467+
```
468+
469+
Si volvemos a usar `generator.return()` en un generator finalizado, devolverá ese valor nuevamente ([MDN](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Generator/return)).
470+
471+
No lo usamos a menudo, ya que la mayor parte del tiempo queremos todos los valores, pero puede ser útil cuando queremos detener el generador en una condición específica.
472+
451473
## Resumen
452474

453475
- Los generadores son creados por funciones generadoras `function* f(…) {…}`.

0 commit comments

Comments
 (0)