1.什么是单线程?和异步有什么关系?

  • 单线程就是同时只做一件事,两段JS不能同时执行
  • 原因是为了避免DOM渲染的冲突
  • 异步是一种“无奈”的解决方案,虽然有很多问题

2.什么是event-loop?

  • 事件轮询,JS异步的解决方案
  • 什么是异步队列,何时被放入异步队列
  • 轮询的过程

3.jQuery Deferred

  • 可以jQuery 1.5 对ajax的改变举例
  • 说明如何简单的封装,使用Deferred
  • 说明Promise和Deferred的区别

4.Promise的使用和原理

  • 基本语法
  • 如何捕获异常
  • 多个串联–链式执行
  • Promise.all和Promise.race
  • Promise标准 – 状态变化,.then 函数

5.async/await

  • 基本语法
  • 使用了Promise,并没有和Promise冲突
  • 但是:改变不了JS单线程的本质

当前异步的解决方案

  1. jQuery Deferred
  2. Promise
  3. Async/Await
  4. Generator(复杂,且不是异步的直接替代方案)

JavaScript解决异步的前世今生相关推荐

  1. 数组转json去除首尾引号_诞生于JavaScript,json的前世今生

    诞生于JavaScript,json的前世今生 json含义 在开始之前,问个问题,什么是json? a:我猜它应该是某一门高深的技术(语重心长) b:json这个词为啥谷歌翻译?是啥新词语嘛?是不是 ...

  2. js解决异步的方法汇总

    js解决异步的方法汇总 参考文章: (1)js解决异步的方法汇总 (2)https://www.cnblogs.com/yunshangwuyou/p/9631914.html 备忘一下.

  3. javascript 解决IE8 兼容 placeholder 属性 含password

    javascript 解决IE8 兼容 placeholder 属性 含password function placeholderfun(){if( !('placeholder' in docume ...

  4. JavaScript 解决计算误差

    JavaScript 解决计算误差 在 JavaScript 中执行计算时,精度误差是一个常见的问题.这是因为 JavaScript 使用二进制表示浮点数,因此不能精确表示所有十进制数.这会导致在 J ...

  5. 进来看很有趣,用JavaScript打印乘法口诀表 用JavaScript打印加法口诀表 用JavaScript打印菱形 用JavaScript判断是否为回文 用JavaScript解决百只鸡的问题

    每次浪漫主义 [4K超清]五月天<后来的我们>线上版 Mayday Fly TO 2021 希望大家能好好珍惜你身边的那个她,别等失去了才后悔莫及. JavaScript 用JavaScr ...

  6. JavaScript解决常见浏览器兼容问题

    JavaScript解决常见浏览器兼容问题 我们提倡尽可能使用CSS,而且我们常常能做到这一点.现代浏览器有很好的CSS支持-这无疑足够好让你使用CSS来控制布局和版面设计.但是有时候,某些网页元素在 ...

  7. 12种Javascript解决常见浏览器兼容问题的方法

    们提倡尽可能使用CSS,而且我们常常能做到这一点.现代浏览器有很好的CSS支持-这无疑足够好让你使用CSS来控制布局和版面设计.但是有时候,某些网页元素在不同的浏览器会出现不同. 如果你不知道原因,不 ...

  8. JavaScript解决e6不支持不支持max-width,max-height的问题的方法

    今天遇到一个关于用js解决ie6不支持支持max-width,max-height的问题,刚开始用jQuery方法来实现,不过一直获取不到css里面的值,如 if($.browser.msie &am ...

  9. javaScript解决浏览器兼容问题,判断浏览器是ie或者Chrome

    最近在写一个项目中遇到了一个问题,从java后台输出一段字符串,需要用到这个字符串,返回到页面上面. 假定该字符串为"" 在Chrome上得到的结果是<pre style= ...

最新文章

  1. 《评人工智能如何走向新阶段》后记(再续13)
  2. 爬虫不得不学之 JavaScript 函数对象篇
  3. SpringDataJpa使用原生sql(EntityManager)动态拼接,分页查询
  4. 自己对多线程的一点思考
  5. java reduce.mdn_reduce高级用法
  6. Android新浪微博client(七)——ListView图片异步加载、高速缓存
  7. gdi画平滑直线_石膏几何体不会画?那是你没有画过这些,学会画石膏很简单,收藏...
  8. 用Fiddler在Android上抓HTTPS包
  9. NiftyNet开源平台使用
  10. 设置Table单元格颜色(Table篇三)
  11. MNIST数据集处理
  12. Game Center Achievements and Leaderboards part 1 转
  13. fastboot下载大镜像报错 remote: data too large
  14. 媒体播放器之:TCPMP播放器简介
  15. springmvc+vue ssm 医院预约挂号系统#毕业设计
  16. SmartRF04EB修复与修改ID号
  17. Cisco交换机 ——STP
  18. Solve TSP with dynamic programming——动态规划解决旅行商(邮递员)问题
  19. Java C#分析WAV音频文件1Khz是否有声音
  20. PCL滤波工具之StatisticalOutlierRemoval深度分析

热门文章

  1. MySQL连接查询练习
  2. 神经网络(Neutral Network)
  3. MATLAB数学建模:智能优化算法-神经网络算法
  4. Nginx部署Vue项目动态路由刷新404
  5. Cassandra_教程二_利用 CQL 操作 Cassandra
  6. 2022河南萌新联赛第(二)场
  7. 【计算机二级等级考试】公共基础知识-学习笔记
  8. 开关电源模块并联供电系统_水冷风冷高频开关电源直流整流器
  9. 书信:欲寄彩笺兼尺素,山长水阔知何处
  10. Unity3d插件分享之Assetbundle工具2021最好用工具没有之一