现在Web应用程序对网页的动态交换需要越来越高,因此越来越有必要进行密集的操作,例如发出外部网络请求以检索API数据。要在 JavaScript 中处理这些操作,开发人员必须使用异步编程技术。
由于 JavaScript 是一种具有同步执行模型的单线程编程语言,用于处理一个又一个操作,因此它一次只能处理一个语句。但是,从 API 请求数据等操作可能需要不确定的时间,具体取决于所请求的数据大小、网络连接速度和其他因素。如果以同步方式执行 API 调用,则在该操作完成之前,浏览器将无法处理任何用户输入,例如滚动或单击按钮。这称为阻止。