Get to know MDN better
This page was translated from English by the community. Learn more and join the MDN Web Docs community.
This feature is well established and works across many devices and browser versions. It’s been available across browsers since сентябрь 2016 г..
Ключевое слово yield используется для остановки и возобновления функций-генераторов (function* или legacy generator function).
Возвращаемое выражение. Если не указано, то возвращается значение undefined.
rvВозвращает необязательное значение, которое передаётся в next() генератора, чтобы возобновить его выполнение.
Ключевое слово yield вызывает остановку функции-генератора и возвращает текущее значение выражения, указанного после ключевого слова yield. Его можно рассматривать как аналог ключевого слова return в функции-генераторе.
На самом деле ключевое слово yield возвращает объект с двумя параметрами, value и done. При этом, value является результатом вычисления выражения после yield, а done указывает, была ли завершена функция-генератор.
Во время остановки на операторе yield, выполнение кода в функции-генераторе не возобновится, пока не будет вызван метод next() возвращаемого функцией объекта-генератора. Это предоставляет непосредственный контроль за выполнением генератора и возвратом его значений.
Следующий фрагмент кода содержит определение функции-генератора и вспомогательной функции:
После того как тело функции-генератора определено, оно может использоваться для получения итератора:
| ECMAScript® 2027 Language Specification # prod-YieldExpression |
Enable JavaScript to view this browser compatibility table.
This page was last modified on 17 февр. 2025 г. by MDN contributors.
Your blueprint for a better internet.
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998–2026 by individual mozilla.org contributors. Content available under a Creative Commons license.