--- title: function* Ausdruck slug: Web/JavaScript/Reference/Operators/function* tags: - ECMAScript 2015 - Function - Iterator - JavaScript - Operator - Primary Expression translation_of: Web/JavaScript/Reference/Operators/function* ---
Das function*
Schlüsselwort kann benutzt werden, um Generatorfunktionen in einem Ausdruck zu definieren.
function* [name]([param1[, param2[, ..., paramN]]]) { statements }
name
paramN
statements
Ein function*
Ausdruck sehr ähnlich zu {{jsxref('Statements/function*', 'function* Statements')}} und hat die selbe Syntax. Der Hauptunterschied zwischen einem function*
Ausdruck und function*
Statement ist der Funktionsname, welcher in einem function*
Ausdruck weggelassen werden kann, um eine anonyme Funktion zu erstellen. Mehr Informationen sind im Kapitel Funktionen enthalten.
Das folgende Beispiel definiert eine namenlose Generatorfunktion und weist diese x
zu. Die Funktion liefert das Quadrat ihres Argumentes:
var x = function*(y) { yield y * y; };
Spezifikation | Status | Komment |
---|---|---|
{{SpecName('ES2015', '#', 'function*')}} | {{Spec2('ES2015')}} | Initiale Definition. |
{{SpecName('ESDraft', '#', 'function*')}} | {{Spec2('ESDraft')}} |
{{Compat("javascript.operators.function_star")}}