默认情况下Java语言是同步语言还是异步语言?

问题描述 投票:-3回答:1

我对互联网上的大多数文章感到困惑。他们将javascript说明为同步语言,但我个人将其理解为异步语言。

而且我还需要了解回调函数, 承诺异步等待函数之间的区别。

javascript ecmascript-6 ecmascript-5
1个回答
0
投票

Javascript是一种同步语言。它一个接一个地执行任务。回调/承诺/异步等待是使用事件循环的概念来处理的。我建议您阅读一下。

一旦完成某些功能/任务,便会执行回调。在许多情况下这是有帮助的,但以下也是一些缺点。

  • 在回调内部使用回调,然后在链中使用更多回调可能会导致回调地狱。
  • 回调并非旨在处理错误。 (如果您熟悉这种代码.then(() => {}).catch(e => {}))。

因此,基本上,承诺是在发生某件事之后执行某事的一种更干净的方法。例如。仅在服务器发送响应后,才从ajax调用中打印响应。另外,如果服务器发送404/500或任何错误,则可以在.catch中处理这样,代码不会中断。

异步/等待是处理异步任务的最新,最简单的方法(在我看来)。正如他们所说,Async / await只是在promise之上构建的语法糖

© www.soinside.com 2019 - 2024. All rights reserved.