Discuss
/
JavaScript
/
不知道为何,上文中的for (x of fib(5)) 只能输出:0 1 1 2,无3..
不知道为何,上文中的for (x of fib(5)) 只能输出:0 1 1 2,无3..
Topic sourcefunction* fib(max) {
var
t,
a = 0,
b = 1,
n = 1;
while (n < max) {
yield a;
t = a + b;
a = b;
b = t;
n ++;
}
return a;
}
这里n = 1,也就是说循环从1开始然后再到5,总共循环4遍,所以只显示4个啊. 让n = 0或者使用do while语句就是输出5个了.
- 1
_MagicalLu