Generator.prototype.return()
The return() method returns the given value and finishes
the generator.
Syntax
return(value)
Parameters
value-
The value to return.
Return value
The value that is given as an argument.
Examples
Using return()
The following example shows a simple generator and the return method.
function* gen() {
yield 1;
yield 2;
yield 3;
}
const g = gen();
g.next(); // { value: 1, done: false }
g.return('foo'); // { value: "foo", done: true }
g.next(); // { value: undefined, done: true }
If return(value) is called on a generator that is already in
"completed" state, the generator will remain in "completed" state.
If no argument is provided, the value property of the returned object will be "undefined". If an argument is provided, it will be set to the value
of the value property of the returned object.
function* gen() {
yield 1;
yield 2;
yield 3;
}
const 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 }
Specifications
| Specification |
|---|
| ECMAScript Language Specification (ECMAScript) # sec-generator.prototype.return |
Browser compatibility
BCD tables only load in the browser