yield
Tavsif
yield operatori generator funksiyasini to‘xtatib turish va davom ettirish uchun ishlatiladi.
yield qanday ishlaydi
yield’dan foydalanish uchun generator funksiyasi ichida bo‘lishingiz kerak; u yulduzcha bilan quyidagicha yoziladi: function*.
Generator funksiyasi iterator deb ataladigan kuzatuvchi obyektni qaytaradi. Har safar shu iteratorda .next() metodini chaqirganingizda funksiya yield ko‘rsatmasiga yetguncha ishlaydi. So‘ng u to‘xtaydi va sizga obyekt qaytaradi.
Maslahat
yield — return kalit so‘zining generator uchun varianti.
Misol
// Create a Generator function*
function* countToThree() {
// Pause after each next()
yield "One";
yield "Two";
yield "Three";
// Exit after the 4th next()
return "All done!";
}
// Set up the generator tracker
const counter = countToThree();
// Loop and extract the value from each yield
for (const value of counter) {
text += value + "
";
}
O‘zingiz sinab ko‘ring »
Oddiy o‘xshatish
Kitob o‘qiyotganingizni tasavvur qiling.
- Oddiy funksiya — kitobni oxirigacha (return) to‘liq o‘qib chiqishga o‘xshaydi.
- Generator funksiyasi — bir necha sahifa o‘qib, dam olish uchun xatcho‘p (yield) qo‘yishga o‘xshaydi. Kitobni keyingi safar ochganingizda (.next() bilan) xatcho‘p qoldirgan joyingizdan o‘qishni davom ettirasiz.
Brauzerlarda qo‘llab-quvvatlash
yield — ECMAScript6 (ES6 2015) imkoniyati.
JavaScript 2015 2017-yil iyunidan beri barcha brauzerlarda qo‘llab-quvvatlanadi:
| Chrome 51 |
Edge 15 |
Firefox 54 |
Safari 10 |
Opera 38 |
| 2016-yil may | 2017-yil aprel | 2017-yil iyun | 2016-yil sentabr | 2016-yil iyun |
Shuningdek qarang:
W3Schools Pathfinder
Yutuqlaringizni kuzating – bu bepul!
