司徒正美
司徒正美
根据上面分析,我们不难理解 下面代码的执行流程 ``` javascript function* start() { var a = yield 'start'; console.log(a); var b = yield 'running'; console.log(b); var c = yield 'end'; console.log(c); return 'over'; } var it...
``` javascript function* child() { console.log("step in child generator") var b = yield 'running'; console.log(b+"!"); console.log("step out child generator") } var runGenerator = child(); function* start() { var a =...
如果子生成器函数里面存在return ,那么它return到那里,以后再就会跑剩下的yield语句了 ``` javascript function* run() { console.log("step in child generator"); return "child over"; var b = yield 'running'; console.log(b); console.log("step out child generator") } var runGenerator = run(); function*...
http://deadhorse.me/slides/koa.pdf
http://www.zhihu.com/question/31863128/answer/54025549?utm_source=weibo&utm_medium=weibo_share&utm_content=share_answer&utm_campaign=share_button


为什么使用pm2 ? 最牛的监控平台,集成多线程及热启动技术。 如果你在启动时报以下错误 ``` javascript D:\agate>pm2 start app --node-args="--harmony" fs.js:751 return binding.mkdir(pathModule._makeLong(path), ^ Error: ENOENT, no such file or directory 'D:\Users\qincheng.zhong.QUNARSERVERS\. pm2' ``` 那么你应该建立`D:\Users\qincheng.zhong.QUNARSERVERS\.pm2`目录就可以了 ``` javascript D:\agate>mkdir D:\Users\qincheng.zhong.QUNARSERVERS\.pm2 D:\agate>dir...
co 要求传入一个生成器函数, 然后让里面的所有异步方法同步执行(从上往下执行),最后返回一个Promise ``` javascript var co = require("co") var delay = function(a){ return function(fn){ var now = new Date setTimeout(function(){ console.log(a + "--------") fn(null, new Date - now) },...
co方法只是让参数函数的内部变成一种类似PHP同步环境, 但不方便我们往这个环境传参 因此就有了co.wrap, 这也是koa里面使用的方法 将上面的例子改一下 ``` javascript var co = require("co") var delay = function(a){ return function(fn){ var now = new Date setTimeout(function(){ console.log(a + "--------") fn(null, new Date -...