$.ajax是异步的

var ret = '---';
$.ajax({//异步执行url: 'http://localhost:3000/data',success: function(data) {ret = data;console.log(ret)}
});
console.log(ret)//不会等待$.ajax的结束,会立即执行,输出'---'

另外,下面的三个请求执行顺序不确定

    $.ajax({url: 'http://localhost:3000/data',success: function(data) {console.log(data)}});$.ajax({url: 'http://localhost:3000/data1',success: function(data) {console.log(data)}});$.ajax({url: 'http://localhost:3000/data2',success: function(data) {console.log(data)}});

如果想要嵌套请求,顺序执行, 则会出现嵌套地狱:

    $.ajax({url: 'http://localhost:3000/data',success: function(data) {console.log(data)$.ajax({url: 'http://localhost:3000/data1',success: function(data) {console.log(data)$.ajax({url: 'http://localhost:3000/data2',success: function(data) {console.log(data)}});}});}});

promise 为什么出现相关推荐

  1. setTimeout、setInterval、promise、async/await的顺序详解(多种情况,非常详细~)

    本文很长,列举的情况很多. 在阅读本文之前,如果您有充足的时间,请新建一个项目与本文一同实践. 每段代码都有对应的解释,但是自己动手尝试印象才会更深哦~ setInterval:表示多久执行一次,需要 ...

  2. C++多线程:异步操作std::async和std::promise

    文章目录 std::async 简介 使用案例 std::promise 简介 成员函数 总结 之前的文章中提到了C++多线程中的异步操作机制 C++ 多线程:future 异步访问类(线程之间安全便 ...

  3. ES6中的Promise详解

    Promise 在 JavaScript 中很早就有各种的开源实现,ES6 将其纳入了官方标准,提供了原生 api 支持,使用更加便捷. 定义 Promise 是一个对象,它用来标识 JavaScri ...

  4. 关于ES6中Promise的应用-顺序合并Promise,并将返回结果以数组的形式输出

    1.Promise 基础知识梳理 创建一个Promise实例 const promise = new Promise(function(resolve, reject) {if (success){r ...

  5. promise实现多个请求并行串行执行

    早上查资料,偶然发现这个话题,发现自己并不会,于是乎,下来研究了一下. 想想之前我们用jquery写请求的时候,要实现请求的串行执行,我们可能是这么做的. $.ajax({url: '',data: ...

  6. 异步编程之Promise(2):探究原理

    异步编程系列教程: (翻译)异步编程之Promise(1)--初见魅力 异步编程之Promise(2):探究原理 异步编程之Promise(3):拓展进阶 异步编程之Generator(1)--领略魅 ...

  7. 自己动手写cpu pdf_自己动手写 Promise

    这段时间在学习Promise,但始终不得要领.为了更好地理解Promise,我决定自己实现一个简易版的Promise,以学习Promise工作原理.该工程名为ToyPromise,仓库地址如下: ht ...

  8. promise 和 async await区别

     什么是Async/Await? async/await是写异步代码的新方式,以前的方法有回调函数和Promise. async/await是基于Promise实现的,它不能用于普通的回调函数. as ...

  9. Promise - js异步控制神器

    微信小程序开发交流qq群   581478349    承接微信小程序开发.扫码加微信. 正文: 首先给来一个简单的demo看看Promise是怎么使用的: <!DOCTYPE html> ...

  10. Promise的实例用法

    设定函数 function chiFan() {return new Promise(function(resolve, reject) {console.log("chiFan" ...

最新文章

  1. 会写代码的AI开源了!C语言写得比Codex还要好,掌握12种编程语言丨CMU
  2. Oracle EBS渗透测试工具
  3. Java:socket服务端,socket服务端支持多连接,socket客户端,socket客户端支持发送和接受
  4. 2021-01-27 CentOS系统将UTC时间修改为CST时间方法
  5. Ubuntu 16.04网速慢解决方法
  6. [MEGA DEAL]专家级Java捆绑包新手(96%)
  7. 五十个小技巧提高PHP执行效率
  8. .net知识和学习方法系列(二十)CLR-委托
  9. LeetCode-321 Create Maximum Number
  10. oracle中@,深入理解Oracle中的DBCA
  11. slack 团队协作平台
  12. 【初学者】10个例子带你了解机器学习中的线性代数
  13. Win7/Win10如何设置局域网文件共享
  14. 企业级多用户发卡平台源码
  15. kindle可以上网但是无法下载_您的Kindle已连接WiFi网络,但无法连接互联网的解决办法...
  16. java中POJO、PO、BO、VO、DTO和DAO的概念
  17. 六级考研单词之路-四
  18. idea html设置字体大小,intellij idea设置(字体大小、背景)
  19. Android之vold进程启动源码分析
  20. 目标检测评价指标(一文看懂)

热门文章

  1. SQL SERCER 控制 SERVERICE BROKER 服务
  2. 把chord下dbm_noauth做成静态库,提供接口
  3. 47 - 算法 - Leetcode-160 -相交链表
  4. 必须掌握的Python技巧(一)
  5. 为什么要预留字段_PaperYY为什么会免费论文查重?
  6. oracle12c时间,Oracle 12c-选择冒号后的日期时间字符串
  7. Python+KNN算法判断单词相似度小案例
  8. 详解Python字符串编码格式
  9. C++ 整形转换为字符串的方式总结
  10. Linux 浅谈代码打印到终端的缓冲区(进度条程序)