คีย์เวิร์ด yield ใช้ใน JavaScript เพื่อหยุดและดำเนินการต่อ Generator Function ค่าของ Expression จะถูกส่งกลับไปยัง Caller ของ Generator
ไวยากรณ์
[val] = yield [exp];
exp คือ Expression ค่าที่ส่งกลับ val คือค่าที่ส่งเข้ามาผ่าน next()
ตัวอย่าง Generator Function
function* displayRank () {
var selPlayers= [1, 2, 3, 4];
for (var a = 0; a < selPlayers.length; a++) {
yield selPlayers[i];
}
}
หลังสร้าง Generator Function ใช้งานได้ดังนี้
var rank = displayRank(); alert(rank.next()); // value: 1 alert(rank.next()); // value: 2 alert(rank.next()); // value: 3 alert(rank.next()); // value: 4 alert(rank.next()); // value: undefined