Generator.prototype.return()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2016.

El método return() regresa el valor dado y finaliza al generador.

Sintaxis

gen.return(valor)

Parámetros

valor

El valor a regresar.

Valor de retorno

El valor dado como argumento.

Ejemplos

Utilizando return()

El siguiente ejemplo muestra un generador simple y su método return.

js
function* gen() {
  yield 1;
  yield 2;
  yield 3;
}

var g = gen();

g.next(); // { value: 1, done: false }
g.return("foo"); // { value: "foo", done: true }
g.next(); // { value: undefined, done: true }

Si return(valor) es invocado en un generador que ya está en su estado "completado", el generador permanecerá en estado "completado". Si no se da ningún argumento, el objeto regresado es el mismo a que si se invocara .next(). Si se da un argumento, éste se asignará como valor en la propiedad value del objeto regresado.

js
function* gen() {
  yield 1;
  yield 2;
  yield 3;
}

var g = gen();
g.next(); // { value: 1, done: false }
g.next(); // { value: 2, done: false }
g.next(); // { value: 3, done: false }
g.next(); // { value: undefined, done: true }
g.return(); // { value: undefined, done: true }
g.return(1); // { value: 1, done: true }

Especificaciones

Specification
ECMAScript Language Specification
# sec-generator.prototype.return

Compatibilidad con navegadores

BCD tables only load in the browser

Ver también