JS.07 · Основы
Задача
Получить первые n чисел Фибоначчи.
Алгоритм
Функция-генератор yield-ит очередное число, пара соседних значений обновляется деструктуризацией.
Исходный код
⇩ Скачать 07-chisla-fibonachchi.js
// Числа Фибоначчи через генератор
function* fib(n) {
let a = 0, b = 1;
for (let i = 0; i < n; i++) {
yield a;
[a, b] = [b, a + b];
}
}
console.log([...fib(12)].join(' '));
Пояснения
function* создаёт генератор; спред [...gen] собирает выданные значения в массив.