Non-standard
This feature is non-standard and is not on a standards track. Do not use it on production sites facing the Web: it will not work for every user. There may also be large incompatibilities between implementations and the behavior may change in the future.

Obsolete since Gecko 58 (Firefox 58 / Thunderbird 58 / SeaMonkey 2.55)
This feature is obsolete. Although it may still work in some browsers, its use is discouraged since it could be removed at any time. Try to avoid using it.

The legacy generator function was a SpiderMonkey-specific feature, which is removed in Firefox 58+. For future-facing usages, consider using function*.

The legacy generator function statement declares legacy generator functions with the specified parameters.

You can also define functions using the Function constructor with functionBody and at least one yield expression, and a legacy generator function expression.

Syntax

function name([param,[, param,[..., param]]]) {
   [statements]
}
name
The function name.
param
The name of an argument to be passed to the function. A function can have up to 255 arguments.
statements
The statements which comprise the body of the function. This should contain at least one yield expression.

Description

An overview of the usage is available on the Iterators and Generators page.

Browser compatibility

Supported nowhere.

See also