This question already has answers here:
How to return the response from an asynchronous call?
(42个答案)
4年前关闭。
我听到有人在谈论javascript中的异步操作。另一方面,人们说Javascript始终是同步的sync javascript。哪个是对的? Javascript真的是异步的还是同步的?人们谈论异步javascript是什么意思?
我了解的是,同一页面上的Javascript不能与另一Javascript代码块同时运行。但是例如在ajax请求中,在等待服务器响应时,可以执行代码,然后在响应到达时继续进行回调。尽管这是否意味着,我们等待服务器响应时正在运行的代码必须完成其自身,否则将被中断?
(42个答案)
4年前关闭。
我听到有人在谈论javascript中的异步操作。另一方面,人们说Javascript始终是同步的sync javascript。哪个是对的? Javascript真的是异步的还是同步的?人们谈论异步javascript是什么意思?
我了解的是,同一页面上的Javascript不能与另一Javascript代码块同时运行。但是例如在ajax请求中,在等待服务器响应时,可以执行代码,然后在响应到达时继续进行回调。尽管这是否意味着,我们等待服务器响应时正在运行的代码必须完成其自身,否则将被中断?
最佳答案
请注意,并发代码和异步代码之间是有区别的。人们说JavaScript不是“真正异步”的,这意味着没有两行JavaScript代码可以同时运行,因为它是单线程的。
但是,它是一种异步语言,从某种意义上来说,某些函数将在后台执行和处理,然后在数据准备就绪时触发回调函数或事件监听器。在发生这种情况的同时,其他JavaScript块也可以运行,但同样,其他任何JavaScript行都不能运行。
关于javascript - JavaScript中的异步操作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37910479/