我想获得与此类似的功能:
function foo(before, after){
before();
setTimeout(function(){
after();
},100)
}
foo(function(){
console.log('before');
}, function(){
console.log('after');
});
当返回一个对象而不是使用回调(伪代码)时:
var foo = function() {
before();
setTimeout(function(){
after();
},100)
return {
before: before,
after: after
}
};
foo().before(function(){
console.log('before');
});
foo().after(function(){
console.log('after');
});
或者甚至可能
foo().before(function(){
console.log('before');
}).after(function(){
console.log('after');
});
这可能吗?