Từ khóa yield dùng trong JavaScript để tạm dừng và tiếp tục một generator function. Giá trị biểu thức được trả về cho caller của generator.
Cú pháp
[val] = yield [exp];
exp: biểu thức, val: giá trị tùy chọn truyền vào qua next().
Ví dụ Generator
function* displayRank() {
var selPlayers = [1, 2, 3, 4];
for (var i = 0; i < selPlayers.length; i++) {
yield selPlayers[i];
}
}
Sử dụng Generator
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 (done: true)
Lưu ý: function* khai báo generator. next() trả về object {value, done}.