Generator.prototype.throw()

El m茅todo throw() reanuda la ejecuci贸n de un generador al lanzar un error en 茅ste y regresar un objeto con las dos propiedades done y value.

Sintaxis

gen.throw(excepci贸n)

Par谩metros

excepci贸n
La excepci贸n a lanzar. Al hacer depuraci贸n, es 煤til que la excepci贸n cumpla con instanceof Error.

Valor de retorno

Un Object con dos propiedades:

  • done (booleano)
    • Es verdadero si el iterador ya lleg贸 al final de la secuencia. En este caso valor define opcionalmente el valor de retorno del iterador.
    • Es falso si el iterador puede dar un siguiente valor en la secuencia. Es equivalente a no definir la propiedad done.
  • value - cualquier valor Javascript regresado por el iterador. 脡ste puede ser omitido si done is verdadero.

Examples

Using throw()

The following example shows a simple generator and an error that is thrown using the throw method. An error can be caught by a try...catch block as usual.

function* gen() {
  while(true) {
    try {
       yield 42;
    } catch(e) {
      console.log('Error caught!');
    }
  }
}

var g = gen();
g.next();
// { value: 42, done: false }
g.throw(new Error('Something went wrong'));
// "Error caught!"
// { value: 42, done: false }

Specifications

Browser compatibility

BCD tables only load in the browser

See also