JS `Generator` 实现无限序列:如斐波那契数列

各位观众老爷们,今天咱们来聊聊 JavaScript 里一个挺有意思的东西:Generator,以及怎么用它来实现无限序列,比如说那个著名的斐波那契数列。这玩意儿听起来高大上,其实理解起来也不难,咱们争取用最接地气的方式把它讲明白。 开场白:什么是 Generator? 先别急着斐波那契,咱们得先搞清楚 Generator 是个什么玩意儿。你可以把它想象成一个“暂停按钮”,普通的函数一运行就一口气跑到底,而 Generator 函数可以在运行过程中停下来,等你喊“开始”的时候再继续跑。 这“暂停”和“继续”的关键在于 yield 关键字。yield 就像一个路标,告诉 Generator 函数:到这儿就歇会儿,把后面的值吐出去。 Generator 函数的基本语法 Generator 函数的定义和普通函数差不多,只不过多了一个星号 *。 function* myGenerator() { yield 1; yield 2; yield 3; } const generator = myGenerator(); // 注意!这里并没有执行函数体,而是返回一个 Generator 对象 c …