异步任务按顺序执行的问题

来源:4-2 Ajax原理与Callback Hell

悟空338

2021-08-16

异步任务的任务队列不是先进先出原则吗?为什么不能按顺序写,然后程序顺序执行读取abc,而一定要把后面的任务嵌套进前面的任务里呢?

写回答

1回答

谢成

2021-08-16

从问题上看,对异步操作还需要重新认识,比如:

ajax1()

ajax2()

上面每一行代码代表一个异步操作的话,ajax2并不是等到ajax1执行完才执行,异步的意思就是说需要执行一会,但执行多久是不确定的,可能取决于网络情况、服务器响应速度等等。

如果按照上面这样写的话,ajax1请求发出去,不会等到结果返回就会直接执行ajax2。

如果想等到ajax1的结果返回之后,再执行ajax2,就需要将ajax2写到ajax1的回调中。当然后面也会学习到async/await的用法,可以继续往后看视频。

0
1
悟空338
非常感谢!
2021-08-17
共1条回复

JavaScript ES(6-11)全版本语法 前端都需要的基础课

前端无门槛学习,从ES6到ES11,一套课程掌握JS最新语法

1328 学习 · 296 问题

查看课程