先来一道常见的面试题: console.log('start') setTimeout(() => { console.log('setTimeout') }, 0) new Promise((resolve) => { console.log('promise') resolve() }) .then(() => { console.log
转载 8月前
17阅读
什么是微任务任务? js是一种单线程语言,js中的任务按顺序一个一个的执行,但是如果说一个任务耗时太长的话,后面的任务就要慢慢等待,为了解决这个问题,就将任务分为了同步任务以及异步任务。而异步任务又分为了微任务以及任务。 文章目录1、任务以及微任务的分类2、执行顺序3、案例案例1案例2案例3 1、任务以及微任务的分类1、任务 setTimeoout、setInterval 2、微任务p
任务是由宿主(浏览器、Node)发起的,而微任务由 JS 自身发起。任务(Macrotask)大概如下:setTimeout  setInterval MessageChannel I/O setImmediate(Node环境)    script(整体代码块) 微任务(Microtask)大概如下:MutationObserver(浏览器环
js语言的一大特短就是单线程,即同一时间只能做一件事情。1、事件循环js代码在执行过程中会有很多任务,这些任务总的分为两类:同步任务和异步任务。异步任务又可以细分为任务与微任务。2、执行顺序主线程 > 微任务 > Dom渲染 > 任务首先js 是单线程运行的,在代码执行的时候,通过将不同函数的执行上下文压入执行栈中来保证代码的有序执行。在执行同步代码的时候,如果遇到了异步事件
先放上小姐姐的博客地址:https://.cnblogs./zhengyeye/p/10774837.html。 这篇文章是看小姐姐的博客才让自己对任务和微任务解决题目有了更多的认识的。 前端里面,很多很优秀的小姐姐,多多接近优秀的小姐姐,多多向她们学习。 言归正传 1.js是一个单线
转载 2019-08-17 13:18:00
226阅读
2评论
所谓微任务任务 任务:常见的定时器,用户交互事件等等.(任务就是特定的这些个任务,没什么特殊含义) 微任务:Promise相关任务,MutationObserver等(一样,只是一种称呼而已!!!) 到底先执行微任务还是任务 先有鸡还是先有蛋? 到底是先有任务还是微任务啊? 第一个原则 万物皆从全局上下文准备退出,全局的同步代码运行结束的这个时机开始
原创 2022-04-29 13:46:11
4558阅读
任务于微任务
转载 2022-11-21 12:51:04
102阅读
什么是任务和微任务? Javascript把异步任务又做了进一步的划分,异步任务又分为两类分别是: 任务 异步Ajax请求 setTimeout、setInterval 文件操作 其他任务任务 promise.then、.catch、.finally process.nextTick 其他 ...
转载 2021-10-04 13:43:00
200阅读
2评论
任务浏览器为了能够使得JS内部task与DOM任务能够有序的执行,会在一个task执行结束后,在下一个 task 执行开始前,对页面进行重新渲染,鼠标点击会触发一个事件回调,需要执行一个任务,然后解析HTMlsetTimeout,setInterval,I/O,requestAnimationF ...
转载 2021-08-18 10:53:00
129阅读
2评论
啊 ,又是个笔/面试常考题,最近投简历面试、笔试被问了无数次了。1、概念 由于 JavaScript 是一门单线程语言, 所有的任务都只能在一个线程上执行。JS 中的任务分为同步任务和异步任务,同步任务会在主线程上依次执行,而异步任务会被放入一个任务队列中等待,等待主线程中的同步任务执行完毕之后,再根据事件循环机制去执行异步任务。(EventLoop事件循环机制,我在之前的博客中有讲述,在这就不细
实现动画效果的方法比较多,Javascript 中可以通过定时器 setTimeout 来实现,css3 可以使用 transition 和 animation 来实现,html5 中的 canvas 也可以实现。除此之外,html5 还提供一个专门用于请求动画的API,那就是 requestAnimationFrame,顾名思义就是请求动画帧。 屏幕刷新频率:屏幕每秒出现图像的次数。普通笔记本
转载 2021-06-30 14:05:37
257阅读
实现动画效果的方法比较多,Javascript 中可以通过定时器 setTimeout 来实现,css3 可以使用 transition 和 animation 来实现,html5 中的 canvas 也可以实现。除此之外,html5 还提供一个专门用于请求动画的API,那就是 requestAnimationFrame,顾名思义就是请求动画帧。屏幕刷新频率:屏幕每秒出现图像的次数。普通笔记本...
转载 2021-07-31 17:34:30
118阅读
requestAnimationFrame
原创 2022-01-21 11:20:41
82阅读
requestAnimationFrame 方法让我们可以在下一帧开始时调用指定函数。但是很多人可能不知道,不管三七二十一直接在 requestAnimationFrame 的回调函数里绘制动画会有一个问题。是什么问题呢?要理解这个问题,我们先要了解 requestAnimationFrame 的一
原创 2022-07-12 10:44:01
96阅读
实现动画效果的方法比较多,Javascript 中可以通过定时
转载 2022-03-29 11:53:02
34阅读
js是单线程语言。也就是干活的时候只能有一个人来干活。举个生活中的例子,我每天都会有很多的事情,吃饭上班坐车打卡,这些事情时刻只能做一件事情, 我会把其他的事情放在一个任务列表里面,等我手上事情做完了,我会接着继续做任务列表里面的事情。我用ps给大家画了一张图,个人感觉一看就明白啦那么问题来了,如果碰到for循环一万次打印出来是什么呢?setTimeout(() => {
原创 2022-09-10 06:28:16
200阅读
*任务*:在js中,在主线程上执行的任务任务,常见的有: 1渲染事件 用户交互事件 js脚本 网络请求、文件读写完成事件 延迟事件(定时器) 普通任务队列、延迟队列中的任务都属于任务。 为了让这些事件有条不紊的进行,js引擎需要对执行的顺序做一定的安排,v8其实采用是一种队列的方式来存储这些 ...
转载 2021-07-25 21:29:00
190阅读
2评论
requestAnimationFrame
原创 2021-07-17 14:35:04
116阅读
requestAnimationFrame 帧动画 1、与 setTimeout、setInterval的优势主要有两点: 每一帧中的所有DOM操作集中起来,在一次重绘或回流中就完成,并且重绘或回流的时间间隔紧紧跟随浏览器的刷新频率,一般来说,这个频率为每秒60帧。 在隐藏或不可见的元素中,requ ...
转载 2021-10-14 10:55:00
86阅读
2评论
任务(macro-task)定义消息队列中的任务称为任务。产生宿主环境提供的方法是任务,例如setTi
原创 2022-07-22 10:01:21
360阅读
  • 1
  • 2
  • 3
  • 4
  • 5