简单Promise回顾
1:传统的CallBack回调函数
let ajax=function(callback){
	//dosomething
	this.setTimeout(()=>{
		callback&&callback()
	},1000)
}
ajax(console.log("isCallBack"))
多层回调回会导致代码复杂/难以维护
2:promise改造
let ajax= function(){
	//返回promise实例,有.then/.catch方法
	return new Promise(function(resolve,reject){
		setTimeout(()=>{
		resolve()
	},1000)
	})
}
ajax().then(
	//下一步的方法
		()=>{
			console.log("promise改造")
		},
		// ()=>{
		// 	console.log("reject")
		// }
	)
3:catch方法
let ajax =function(num){
	//dosomething
	return new Promise(function(resolve,reject){
		if(num>6){
			resolve();
		}else{
			throw new Error("ISERROR")
		}
	})
}
ajax(2).then().catch()
4:全部执行完成,Promise.all;
Promise.all([
		ajax(),
		ajax(),
		ajax(),
	])
当所有的ajax全部执行完成后,才会执行下一步
.then()
5:只要有一个promise执行结束 Promise.race
Promise.race([
		ajax(),
		ajax(),
		ajax(),
	])
.then()
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号