Обложка канала

WebDEV

19233 @webb_dev

Канал о web-разработке. Новости IT, туториалы, веб-программирование и многое другое.

WebDEV

5 лет назад
Открыть в
💡 Генераторы в JavaScript

Генератор определяет, какое значение будет возвращено при следующем вызове next().

function* greeter() {
yield 'Hi';
yield 'How are you?';
yield 'Bye';
}

const greet = greeter();

console.log(greet.next().value);
// 'Hi'

console.log(greet.next().value);
// 'How are you?'

console.log(greet.next().value);
// 'Bye'

console.log(greet.next().value);
// undefined

А вот пример использования генератора для бесконечных значений:

function* idCreator() {
let i = 0;
while (true)
yield i++;
}

const ids = idCreator();

console.log(ids.next().value);
// 0

console.log(ids.next().value);
// 1

console.log(ids.next().value);
// 2
// etc...

WebDEV #советы #coding #js #web