aop-function
nodejs function aop plugin
var aop = require('aop-function'); //target function var kill = function(who,blood,callback){ setTimeout(function(){ console.log('kill==>',who,':',blood); callback(); },500); } kill = aop(kill,function aop1(who,blood,next){ console.log('this is aop1 start ') setTimeout(function(){ next(null,function(nxt){ console.log('this is aop1 end '); nxt(); }); },500); } ,function aop2(who,blood,next){ console.log('this is aop2 start') setTimeout(function(){ next(null,function(nxt){ console.log('this is aop2 end '); nxt(); }); },500); } ,function aop3(who,blood,next){ console.log('this is aop3 start') setTimeout(function(){ next(null,function(nxt){ console.log('this is aop3 end '); nxt(); }); },500); } ); kill('bad-man',1000,function(err){ console.log('kill finish '); })