【问题标题】:How Does AJAX workAJAX 是如何工作的
【发布时间】:2011-03-16 22:09:28
【问题描述】:

我有这个电话:

// some code;
myAjaxCall(
      function abcd() {};
);

// more code

更多的代码和abcd可以在同一个线程还是不同线程中执行。我知道它是异步的。

【问题讨论】:

标签: javascript ajax


【解决方案1】:

假设myAjaxCall 是一个ajax 包装器,第一个参数是完整的回调,答案是“更多代码”将在abcd 函数之前运行。但我需要查看 myAjaxCall 函数才能知道到底发生了什么。

请记住,完整的回调发生在 ajax 重新运行时。 “更多代码”在正常执行路径中执行。

【讨论】:

  • myAjaxCall 中的内容为什么重要?
  • 因为我不知道第一个参数是如何使用的。如果在myAjaxCallarruments[0] 内部被调用,它会首先发生。
【解决方案2】:

AJAX 请求是异步的,但是 Javascript 代码是同步的单线程的。

AJAX 调用之后的代码将在 abcd 函数运行之前完成。在代码退出并将控制权返回给浏览器之前,无法处理响应到达时发生的事件。

【讨论】:

    猜你喜欢
    • 2010-12-03
    • 1970-01-01
    • 2012-01-22
    • 2011-11-07
    • 1970-01-01
    • 2011-08-25
    • 1970-01-01
    • 2012-02-05
    • 1970-01-01
    相关资源
    最近更新 更多