--- 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 }
nazwa
paramN
wyrażenia
Wyraż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")}}