4

假设我有一个网站,每个用户都有一个个人资料。

现在拥有现有个人资料的用户想要对其进行编辑,因此他单击了“编辑我的个人资料”按钮。

让我们假设允许用户完成此操作的 UI 很复杂并且需要一些时间来呈现(100 毫秒)。

对服务器的 AJAX 调用以检索配置文件数据需要 150 毫秒。

单击“编辑我的个人资料”后,我将继续执行以下操作:

  • 显示加载指示器
  • 进行 ajax 调用(150 毫秒)
  • 当 ajax 调用返回时,构建 UI 并用返回的数据填充它(100 毫秒)

总时间:250ms

但是......如果我以其他方式进行怎么办:

  • 开始ajax调用
  • 构建界面(没有内容),也许用顶部的模式弹出窗口锁定它,上面写着“正在加载......”
  • 当ajax调用返回解锁界面并填充它

浏览器是立即启动 AJAX 调用,还是等待当前操作完成?

因为如果是这样,这应该会更快,因为它在进行 AJAX 调用时构造 UI,需要 150 毫秒(重叠的 UI 构造 + AJAX 调用)+ 假设 20 毫秒来更新 UI。

总时间:170 毫秒。

4

1 回答 1

0

顾名思义,AJAX 调用是异步执行的。因此,当您的请求正在进行时 - 其他 JS-Function 可以毫无问题地执行。

于 2013-07-29T12:37:58.957 回答