𝗝𝗮𝘃𝗮𝗦𝗰𝗿𝗶𝗽𝘁 同步与异步

JavaScript 在单线程上运行。这意味着它一次只能执行一件事。你需要了解它是如何处理任务的,以便编写高效的代码。

同步 JavaScript

同步代码逐行运行。每个任务都会等待前一个任务完成。这被称为“阻塞”(blocking)。如果一个任务耗时较长,整个程序都会停止。

异步 JavaScript

异步代码独立运行。任务在等待时不会阻塞其他代码。这被称为“非阻塞”(non-blocking)。任务在后台开始运行,并在完成后通知你。

处理异步任务的三种方式:

  1. Callbacks:任务完成后运行的函数。
  2. Promises:代表操作完成或失败的对象。
  3. Async/Await:最简洁的方法。它使异步代码在不阻塞线程的情况下,看起来像同步代码一样。

常见的异步操作:

Event Loop(事件循环)实现了这一机制。它利用 Call Stack(调用栈)、Web APIs 和 Callback Queue(回调队列)来同时管理多个任务。

总结:

Source: https://www.geeksforgeeks.org/javascript/synchronous-and-asynchronous-in-javascript/ Source: https://www.w3schools.com/js/js_asynchronous.asp Source: https://medium.com/@mohdtalib.dev/what-is-synchronous-and-asynchronous-in-javascript-07adb7b4cc5f

Full post: https://dev.to/raja_b_0c9d242e2c26cf063b/javascript-synchronous-and-asynchronous-2a69