參考文檔 (小白提供)(另 剛看歷史喵 原來 歷史上的曾經有個叫管仲的 也叫小白,而且是個扛把子哦!!!)
沒有return的場合
async function gen(){
await Promise.resolve(1)
console.log('gne1')
await Promise.resolve(1)
console.log('gne2')
await Promise.resolve(1)
console.log('gne3')
await Promise.resolve(1)
console.log('gne4')
await Promise.resolve(1)
console.log('gne5')
}
gen()
Promise.resolve(1).then(()=>{
console.log('p11')
//return Promise.resolve(1)
}).then(()=>{
console.log('p12')
}).then(()=>{
console.log('p21')
}).then(()=>{
console.log('p22')
}).then(()=>{
console.log('p23')
}).then(()=>{
console.log('p31')
//return Promise.resolve(1)
}).then(()=>{
console.log('p32')
}).then(()=>{
console.log('p33')
}).then(()=>{
console.log('p41')
}).then(()=>{
console.log('p42')
}).then(()=>{
console.log('p43')
}).then(()=>{
console.log('p51')
}).then(()=>{
console.log('p52')
}).then(()=>{
console.log('p53')
}).then(()=>{
console.log('p61')
})
沒有 return 的時候
- promise promise 主程序
- promise promise promise 主程序
- promise promise promise 主程序
- 。。。。。。
上面這種頻率輸出的
有return的場合
async function gen(){
await Promise.resolve(1)
console.log('gne1')
await Promise.resolve(1)
console.log('gne2')
await Promise.resolve(1)
console.log('gne3')
await Promise.resolve(1)
console.log('gne4')
await Promise.resolve(1)
console.log('gne5')
}
gen()
Promise.resolve(1).then(()=>{
console.log('p11')
//return Promise.resolve(1)
}).then(()=>{
console.log('p12')
}).then(()=>{
console.log('p21')
}).then(()=>{
console.log('p22')
}).then(()=>{
console.log('p23')
}).then(()=>{
console.log('p31')
return Promise.resolve(1)
}).then(()=>{
console.log('p32')
}).then(()=>{
console.log('p33')
}).then(()=>{
console.log('p41')
}).then(()=>{
console.log('p42')
}).then(()=>{
console.log('p43')
}).then(()=>{
console.log('p51')
}).then(()=>{
console.log('p52')
}).then(()=>{
console.log('p53')
}).then(()=>{
console.log('p61')
})
當在輸出比較穩定的 位置 比如 31 那個地方 多放一個return 時候,
就會從31 開始 都跳了一個 似的 。。。。。。
運行結果如下: