function* expression
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since сентябрь 2016 г..
Ключевое слово function* может использоваться для объявления функции-генератора внутри выражения.
Синтаксис
function* [имя]([параметр1[, параметр2[, ..., параметрN]]]) {
инструкции
}
Параметры
имя-
Имя функции. Может быть опущено, в этом случае функция будет анонимной. Имя локально для тела функции.
параметрN-
Имя аргумента, передаваемого в функцию. Функция может иметь до 255 аргументов.
инструкции-
Инструкции, составляющие тело функции.
Описание
Выражение function* очень похоже на объявление function*, и имеет почти такой же синтаксис. Основная разница между выражением function* и объявлением function* – в имени функции, которое может быть опущено в выражениях function* для создания анонимных функций. Смотрите главу о функциях для получения более подробной информации.
Примеры
В следующем примере определяется безымянная функция-генератор и присваивается переменной x. Функция возвращает квадрат своего аргумента:
var x = function* (y) {
yield y * y;
};
Спецификации
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-generator-function-definitions> |
Совместимость с браузерами
Loading…