先说结论再说原因

结论:比如点击事件触发了两个ajax请求或者更多的请求,是没有执行顺序的,各个请求的快慢完全取决于返回的快慢,或许你在浏览器调试窗口看见的是先发了一个请求,再发了一个,但是完全没有等待其返回就已经执行下一步操作。

原因:

首先在这里要明白单线程、多线程和线程:

线程是程序中的一个执行流,每个线程都有自己的专有寄存器(栈指针、程序计数器等),但代码区是共享的,
即不同的线程可以执行同样的函数。

多线程与单线程的区别:
你早上上班,正要打卡的时候,手机响了。。你如果先接了电话,等接完了,在打卡,就是单线程。
如果你一手接电话,一手打卡。就是多线程。两件事的结果是一样的。。你接了电话且打了卡。

js是单线程操作,那么问题就来了,既然是单线程为啥ajax请求无顺序,因为是并行的。

在这里需要了解并发和并行:

1、并行就是两个任务同时运行,就是甲任务进行的同时,乙任务也在进行。

2、并发是指两个任务都请求运行,而处理器只能按受一个任务,就把这两个任务安排轮流进行,由于时间间隔较短,使人感觉两个任务都在运行。

这两个概念说深说浅都不合适,多看多理解,入几次坑就很有体会了。

ajax多个请求执行顺序的更多相关文章

  1. jquery ajax 中各个事件执行顺序

    jquery ajax 中各个事件执行顺序如下: 1.ajaxStart(全局事件) 2.beforeSend 3.ajaxSend(全局事件) 4.success 5.ajaxSuccess(全局事 ...

  2. jquery ajax中各个事件执行顺序如下

    $(function(){ setTimeout(function(){ $.ajax({ url:'/php/selectStudent.php', }); },0); $(document).aj ...

  3. jquery ajax中事件的执行顺序

    jquery中各个事件执行顺序如下: 1.ajaxStart(全局事件) 2.beforeSend 3.ajaxSend(全局事件) 4.success 5.ajaxSuccess(全局事件) 6.e ...

  4. 关于AJAX中函数的执行顺序

    考察w3school上的一个实际的例子[1]: <html> <head> <script type="text/javascript"> fu ...

  5. Jmeter组件执行顺序与作用域

    一.Jmeter重要组件: 1)配置元件---Config Element: 用于初始化默认值和变量,以便后续采样器使用.配置元件大其作用域的初始阶段处理,配置元件仅对其所在的测试树分支有效,如,在同 ...

  6. Jmeter --- 组件执行顺序与作用域

    一.Jmeter重要组件: 1)配置元件---Config Element: 用于初始化默认值和变量,以便后续采样器使用.配置元件大其作用域的初始阶段处理,配置元件仅对其所在的测试树分支有效,如,在同 ...

  7. (六)Jmeter重要组件的执行顺序及作用域

    一.Jmeter重要组件: 1)配置元件---Config Element: 用于初始化默认值和变量,以便后续采样器使用.配置元件大其作用域的初始阶段处理,配置元件仅对其所在的测试树分支有效,如,在同 ...

  8. JMeter学习之元件的作用域与执行顺序

    1.元件的作用域 JMeter中共有8类可被执行的元件(测试计划与线程组不属于元件),这些元件中,取样器是典型的不与其它元件发生交互作用的元件,逻辑控制器只对其子节点的取样器有效,而其它元件(conf ...

  9. Jmeter -- 循环控制器和线程并发(关注执行顺序)

    测试计划中包含两个线程组,分别设置如下: 线程组1:线程数为2,循环次数为4 线程组2:线程数为4 执行顺序 监听器View Results in Table(用表格查看结果)中,ThreadName ...

随机推荐

  1. python变量传递

    python变量传递 数值 代码 num_1 = 123 num_2 = num_1 # 改变num_2值前 print 'num_1 = {0}, num_2 = {1}'.format(num_1 ...

  2. STL的内存管理

    SGI STL 的内存管理 http://www.cnblogs.com/sld666666/archive/2010/07/01/1769448.html 1. 好多废话 在分析完nginx的内存池 ...

  3. jq demo 轮播图,图片可调用,向左,自动+鼠标点击切换

    <!doctype html> <html> <head> <meta http-equiv="Content-Type" content ...

  4. windows10 vs2017 C++连接MySQL

    安装mysql8.0 x64 创建test数据库,user表,插入数据如下: +----+------+----------+-----------------+ | id | name | pass ...

  5. webStrom访问只一个很简单的html文件的时候显示local host无法访问。。

    直接从文件夹运行html没问题的,,,然后百度半天,,乱七八糟的答案, 1.谷歌商店安装 JB插件--插件地址 https://chrome.google.com/webstore/detail/je ...

  6. box-shadow做出一条线两种颜色

    今天同事问我一个问题,说下图的效果是怎么实现的 我当时想都没有想说这不就是两条线嘛,他说是一条线用box-shadow做出来的,之前也没有遇到过,觉得很有意思就试了一把. 语法 box-shadow: ...

  7. 神州数码广域网PPP封装PAP认证配置

    实验要求:熟练掌握PAP认证配置(单向.双向) 拓扑如下: 单向 R1(验证方) enable 进入特权模式 config 进入全局模式  hostname R1 修改名称 interface s0/ ...

  8. GoogLeNet 之 Inception-v1 解读

    本篇博客的目的是展示 GoogLeNet 的 Inception-v1 中的结构,顺便温习里面涉及的思想. Going Deeper with Convolutions:http://arxiv.or ...

  9. JavaScript 堆排序详解

    堆通常实现为全完二叉树,二叉堆一般分为两种:最大堆和最小堆.堆排序就是通过将数组转换成最大堆结构再进行排序. // 原理:把数组转换成最大堆来排序.把堆顶的最大数取出,将剩余的堆继续调整为最大堆,再次 ...

  10. yuan先生博客链接

    Yuan先生的博客网址   1 Web应用  https://www.cnblogs.com/yuanchenqi/articles/8869302.html 2 http协议 https://www ...