采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
老师,这节我有点没听懂,for await of 里面可以异步操作,可以等到一个异步操作执行完再执行下一个异步操作,我这里在异步setTimeout中打印对应的结果,打印的顺序,为什么不是 3 2 1呢,不应该是Three函数执行完再执行two在执行one函数吗?如何实现打印的结果是 3 2 1
老师,我实际想问的是:比如有三个接口,想要先执行第三个接口,接口成功后再执行第一个个,然后第二个,结合这个for await of,发现没弄明白…..
function one(){return new Promise(resolve => {setTimeout(()=>{resolve(1)}, 1000)})}function two(){return new Promise(resolve => {setTimeout(()=>{resolve(2)}, 2000)})}function three(){return new Promise(resolve => {setTimeout(()=>{resolve(3)}, 3000)})}const arr = [three(), two(), one()]async function test(){for await(let item of arr){console.log(item);}}test()
function one(){
return new Promise(resolve => {
setTimeout(()=>{
resolve(1)
}, 1000)
})
}
function two(){
resolve(2)
}, 2000)
function three(){
resolve(3)
}, 3000)
const arr = [three(), two(), one()]
async function test(){
for await(let item of arr){
console.log(item);
test()
登录后可查看更多问答,登录/注册
前端无门槛学习,从ES6到ES11,一套课程掌握JS最新语法
1.8k 2
2.2k 3
2.2k 2
1.4k 2
963 2