快速解决异步回调的问题

大家晚上好!我相信:目前市场上的前端老友们,在解决异步回调函数时序时,加上大家ES6的热度,首先
想到是promiseAPI;其实,做过老项目的,难以忘记jquery Deferred这个牛逼的API,解决地狱式的异步
问题显得很easy!!! 接下来,给大家简单的介绍一下这位兄弟:

demo

    function ok(name){
				 var dfd = new $.Deferred();
				 callback:func(){
				
				    return dfd.resolve( response );
				 }
				 return dfd.promise();
				}
      $.when(ok(1),ok(2)).then(function(resp1,resp2){})

相关API 分成3类

		1类:$.when(pro1,pro1) 将多个 promise 对象以and的关系 合并为1个
		2类:promise 激发为 解决 deferred.resolve([ args ] ) deferred.resolveWith( context, [ args ] )
		和 拒绝 .reject  .rejectWith
		context 上下文 替换 this 和通知 .notify  .notifyWith
		3类: 对激发的响应  解决时deferred.done(args) 拒绝时 deferred.fail() 通知时 deferred.progress()
		不管 解决 或 拒绝 deferred.always()
		deferred.then( doneCallbacks, failCallbacks [, progressCallbacks] )
		promise(或者叫deferred 延迟对象如何获取?)
		var dfd = new $.Deferred(); return dfd.promise();
		返回promise当前状态
		deferred.state()  pending(尚未完成) resolved rejected

你可能感兴趣的:(快速解决异步回调的问题)