斐波那契数列
这个数列从第3项开始,每一项都等于前两项之和。
例如:0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 …
js代码实现
/**
* 斐波那契数列
* @param {最大数} max
*/
function* fibonacci(max) {
let [prev, curr] = [0, 1];
yield prev;
for (;;) {
yield curr;
[prev, curr] = [curr, prev + curr];
max = max || 1000;
if(curr > max) break;
}
}
测试代码与输出结果
// 测试斐波那契数列
console.log(...fibonacci());