wyrażenie function*

Słowo kluczowe function* może być użyte do zdefiniowania funkcji generatora wewnątrz wyrażenia.

Składnia

function* [nazwa]([param1[, param2[, ..., paramN]]]) {
   wyrażenia
}

Parametry

nazwa
Nazw funkcji. Może być pominięta w przyadku funkcji anonimowych. Nazwa jest lokalna i ograniczona do ciała funkcji.
paramN
Nazwa argumentu przekazywanego do funkcji. Funkcja może mieć do 255 argumentów.
wyrażenia
Wyrażenia, które zawiera ciało funkcji.

Opis

Wyrażenie function* jest bardzo podobne i ma niemal taką samą składnię jak 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.

Przykłady

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;
};

Specyfikacje

Specyfikacja Status Komentarz
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'function*' in that specification.
Standard Definicja początkowa.
ECMAScript (ECMA-262)
The definition of 'function*' in that specification.
Living Standard  

Wsparcie przeglądarek

No compatibility data found for javascript.operators.function_star.
Check for problems with this page or contribute missing data to mdn/browser-compat-data.

Zobacz też