AJAX进阶

一、同步代码和异步代码

同步代码:

异步代码:

同步代码:逐行执行,需原地等待结果后,才继续向下执行。
异步代码:调用后耗时,不阻塞代码继续执行(不必原地等待),在将来完成后触发一个回调函数

二、回调函数地狱和 Promise 链式调用

2.1 回调函数地狱 :

需求:展示默认第一个省,第一个城市,第一个地区在下拉菜单中
概念:在回调函数中嵌套回调函数,一直嵌套下去就形成了回调函数地狱
缺点:可读性差,异常无法捕获,耦合性严重,牵一发动全身

2.2 Promise - 链式调用

概念:依靠 then() 方法会返回一个新生成的 Promise 对象特性,继续串联下一环任务,直到结束
细节:then() 回调函数中的返回值,会影响新生成的 Promise 对象最终状态和结果
好处:通过链式调用,解决回调函数嵌套问题
目标:使用 Promise 链式调用,解决回调函数地狱问题
做法:每个 Promise 对象中管理一个异步任务,用 then 返回 Promise 对象,串联起来

三、async 和 await 使用

async函数和await:
定义:
概念: 在 async 函数内,使用 await 关键字取代 then 函数,等待获取 Promise 对象成功状态的结果值。
async函数和await_捕获错误:
使用:
语法:

四、事件循环-EventLoop

认识 - 事件循环(EventLoop):
好处:掌握 JavaScript 是如何安排和运行代码的。
概念:
原因:JavaScript 单线程(某一刻只能执行一行代码),为了让耗时代码不阻塞其他代码运行,设计了事件循环模型。
事件循环 - 执行过程:
定义:执行代码和收集异步任务的模型,在调用栈空闲,反复调用任务队列里回调函数的执行机制,就叫事件循环。

五、Promise.all 静态方法

概念:合并多个 Promise 对象,等待所有同时成功完成(或某一个失败),做后续逻辑 。
语法:

相关推荐

  1. Django框架之Ajax

    2024-04-08 10:46:03       36 阅读
  2. CSS<span style='color:red;'>进</span><span style='color:red;'>阶</span>

    CSS

    2024-04-08 10:46:03      50 阅读
  3. C++:模板

    2024-04-08 10:46:03       47 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-08 10:46:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-08 10:46:03       101 阅读
  3. 在Django里面运行非项目文件

    2024-04-08 10:46:03       82 阅读
  4. Python语言-面向对象

    2024-04-08 10:46:03       91 阅读

热门阅读

  1. 基于Docker 快速搭建EFK日志中心

    2024-04-08 10:46:03       32 阅读
  2. 利用python抓取小说,爬虫抓取小说

    2024-04-08 10:46:03       30 阅读
  3. 关于APP分发,要取得更好效果需要注意的

    2024-04-08 10:46:03       33 阅读
  4. 深入浅出 -- 系统架构之负载均衡Nginx跨域配置

    2024-04-08 10:46:03       35 阅读
  5. 前后端接口写法(传输数据)

    2024-04-08 10:46:03       35 阅读
  6. Teamcenter 修改缓存文件夹名称及路径的方法

    2024-04-08 10:46:03       69 阅读
  7. css 手写返回箭头

    2024-04-08 10:46:03       35 阅读
  8. 【告警监控】监控,巡检和拨测

    2024-04-08 10:46:03       36 阅读
  9. Unity LayoutRebuilder 强制UI重新布局

    2024-04-08 10:46:03       32 阅读
  10. wpf viewmodel和界面双向通知

    2024-04-08 10:46:03       27 阅读
  11. tx-lcn使用

    2024-04-08 10:46:03       32 阅读
  12. WPF —— FromTo/By动画

    2024-04-08 10:46:03       32 阅读
  13. C#WPF控件Menu详解

    2024-04-08 10:46:03       30 阅读
  14. Springboot启动过程

    2024-04-08 10:46:03       34 阅读
  15. Docker设置时区

    2024-04-08 10:46:03       39 阅读