Promise/defrred模式

来源:互联网 发布:java具体是做什么的 编辑:程序博客网 时间:2024/06/05 19:08

var Promise=function(){

this.queue=[];

this.isPromise=true;

}

Promise.prototype.then=function(fulHandler,errorHandler,progressHander){

var handler={};

if(typeof fulHander==='function'){

hander.ful=fulHandler;

}

if(typeof errorHandler==='function'){

handler.error=errorHandler;

}

this.queue.push(handler);

return this;

}

var Deferred=function(){

this.promise=new promise;

}

Deferred.prototype.resolve=function(obj){

var promise=this.promise;

var handler;

while((hander=promise.queue.shift())){

if(hander&&handler.ful){

var ret=handler.fulfiled(obj);

if(ret&&ret.ispromise){

ret.quueu=promise.queue;

this.promise=ret;

return;

}

}

}

}





0 0
原创粉丝点击