我知道JavaScript是单线程的。如果你有一个AJAX调用,那么它会被添加到消息队列中,JavaScript会尽可能地处理它。说我有这样的功能:
function TestAjax
{
//AJAX asynchronous call 1
//AJAX asynchronous call 2
//AJAX asynchronous call 3
}
假设上面的代码将三个HTML表添加到一个网页(每个函数添加一个表),然后我认为AJAX异步调用3可以生成第一个表,即使它最后被添加到消息队列中。
我试图了解这三个调用是否可以在AJAX调用的同时运行,而是在服务器上生成内容。
答案 0 :(得分:2)
是的,它们可以在同一时间运行,您可以体验"交错"结果(如第一个在第一个之前完成)。这一切都取决于服务器端需要多少处理。如果您的第二次调用是返回空字符串的函数,但是您的第一次调用查询大型数据库,则可以期望在数据库结果之前返回空字符串。
具体来说,为什么你关心他们完成的顺序?