--- title: wyrażenie function* slug: Web/JavaScript/Reference/Operators/function* tags: - ECMAScript2015 - Iterator - JavaScript - Operator - funkcja translation_of: Web/JavaScript/Reference/Operators/function* original_slug: Web/JavaScript/Referencje/Operatory/function* ---
Słowo kluczowe function* może być użyte do zdefiniowania funkcji generatora wewnątrz wyrażenia.
function* [nazwa]([param1[, param2[, ..., paramN]]]) {
wyrażenia
}
nazwaparamNwyrażeniaWyrażenie function* jest bardzo podobne i ma niemal taką samą składnię jak {{jsxref('Statements/function*', 'polecenie function*')}}. Zasadnicza różnica między wyrażenem function* a poleceniem function* to nazwa funkcji, która może być pominięta w wyrażeniach function*, co pozwala na tworzenie anonimowych funkcji generatorów. Zobacz również rozdział o funkcjach, aby dowiedzieć się więcej.
Następujący przykład definiuje nienazwaną funkcję generatora i przypisuje ją do x. Funkcja zwraca przekazany argument podniesiony do kwadratu.
var x = function*(y) {
yield y * y;
};
| Specyfikacja | Status | Komentarz |
|---|---|---|
| {{SpecName('ES2015', '#sec-generator-function-definitions', 'function*')}} | {{Spec2('ES2015')}} | Definicja początkowa. |
| {{SpecName('ESDraft', '#sec-generator-function-definitions', 'function*')}} | {{Spec2('ESDraft')}} |
{{Compat("javascript.operators.function_star")}}