案例一
process.nextTick(()=>{console.log("111");})
const promise = new Promise(resolve=>{
console.log("222");
resolve()
})
setTimeout(()=>{console.log("333");},100)
promise.then(()=>{console.log("444");})
案例二
Promise.resolve().then(()=>{console.log("111");})
process.nextTick(()=>{
console.log("222");
})
setTimeout(()=>{
console.log("333");
},0)
console.log("444");
案例三
console.log("111");
setTimeout(()=>{
console.log("222");
},0)
new Promise((resolve)=>{
console.log("333");
resolve()
})
.then(()=>{
console.log("444");
})
.then(()=>{
console.log("555");
})
console.log("666");
案例四
process.nextTick(()=>{
console.log("111");
})
setTimeout(()=>{
console.log("222");
},0)
const promise = Promise.resolve()
promise.then(()=>{
console.log("333");
process.nextTick(()=>{
console.log("444");
})
setTimeout(()=>{
console.log("555");
},0)
})
.catch(()=>{
console.log("666");
})
案例五
process.nextTick(()=>{
console.log("111");
})
setTimeout(()=>{
console.log("222");
},0)
const promise = Promise.resolve()
promise.then(()=>{
console.log("333");
process.nextTick(()=>{
console.log("444");
})
setTimeout(()=>{
console.log("555");
},0)
return new Promise((resolve,reject)=>{
setTimeout(()=>{
reject(111)
},0)
})
})
.catch(()=>{
console.log("666");
})
案例六
const promise = new Promise((resolve,reject)=>{
console.log(111);
setTimeout(() => {
console.log(222);
resolve("success")
console.log(333);
}, 0);
console.log(444);
})
promise.then((res)=>{
console.log(555);
})
console.log(666);