技术最前端,专注 Web 技术学习与总结。JavaScript, JS, ES6, TypeScript, Vue, PHP, CSS3, Html5, Node, Git, Markdown 等技术文章。
在 ES6 中定义一个生成器函数很简单,在 function 后跟上「*」即可:
function* foo1() { };
function *foo2() { };
function * foo3() { };
foo1.toString(); // "function* foo1() { }"
foo2.toString(); // "function* foo2() { }"
foo3.toString(); // "function* foo3() { }"
foo1.constructor; // function GeneratorFunction() { [native code] }
调用生成器函数会产生一个生成器(generator)。生成器拥有的最重要的方法是 next(),用来迭代:
function* foo() { };
var bar = foo();
bar.next(); // Object {value: undefined, done: true}
ES6(ECMAScript2015)的出现,无疑给前端开发人员带来了新的惊喜,它包含了一些很棒的新特性,可以更加方便的实现很多复杂的操作,提高开发人员的效率。
本文主要针对 ES6 做一个简要介绍。 主要译自:http://webapplog.com/ES6/comment-page-1/