web前端从零开始系列-11-Javascript异步操作

异步操作概述

  • 单线程模型: JavaScript 只在一个线程上运行。JavaScript 同时只能执行一个任务,其他任务都必须在后面排队等待。
  • 同步任务和异步任务 Ajax 操作
  • 任务队列和事件循环
  • 异步操作的模式 :回调函数 事件监听 发布/订阅
  • 异步操作的流程控制 串行执行 并行执行 并行与串行的结合

定时器

  • JavaScript 提供定时执行代码的功能,叫做定时器(timer),主要由setTimeout()和setInterval()这两个函数来完成。它们向任务队列添加定时任务。
  • setTimeout函数用来指定某个函数或某段代码,在多少毫秒之后执行。
  • setInterval函数的用法与setTimeout完全一致,区别仅仅在于setInterval指定某个任务每隔一段时间就执行一次,也就是无限次的定时执行。
  • clearTimeout(),clearInterval()
  • 实例:debounce 函数
  • 运行机制
  • setTimeout(f, 0)

Promise 对象

  • Promise 对象是 JavaScript 的异步操作解决方案,为异步操作提供统一接口。异步操作与回调函数之间的中介,使得异步操作具备同步操作的接口。Promise 可以让异步操作写起来,就像在写同步操作的流程,而不必一层层地嵌套回调函数。
  • Promise 对象的状态 Promise 对象通过自身的状态,来控制异步操作
  • Promise 构造函数 用来生成 Promise 实例
  • Promise.prototype.then() 用来添加回调函数。
  • then() 用法辨析
  • 实例:图片加载
  • Promise 的回调函数属于异步任务,会在同步任务之后执行。

以上学习整理于 阮一峰教程 更详细内容可直接访问

还有四大模块 DOM\事件\浏览器模型\网页元素接口 这样整理似乎意义不大,但让看不下书浮躁的我,能够静下心来,多看一会儿,让我对js 有更深的理解。单独眼睛阅读,阅读效果会比这样整理差些!

彼特城博客
请先登录后发表评论
  • latest comments
  • 总共0条评论