generator 函数在执行过程当中,若是没有遇到return语句(函数末尾若是没有return,就是隐含的return undefined;),控制权没法交回被调用的代码。 generator和函数不一样的是,generator由function*定义(注意多出的*号),而且,除了return语句,还能够用yield返回屡次 function* foo(x) { yield x + 1; yield x + 2; return x + 3; }