获得徽章 0
重排/回流(Reflow):当DOM的变化影响了元素的几何信息,浏览器需要重新计算元素的几何属性,将其安放在界面中的正确位置,这个过程叫做重排。表现为重新生成布局,重新排列元素。
重绘(Repaint): 当一个元素的外观发生改变,但没有改变布局,重新把元素外观绘制出来的过程,叫做重绘。表现为某些元素的外观被改变
单单改变元素的外观,肯定不会引起网页重新生成布局,但当浏览器完成重排之后,将会重新绘制受到此次重排影响的部分
重排和重绘代价是高昂的,它们会破坏用户体验,并且让UI展示非常迟缓,而相比之下重排的性能影响更大,在两者无法避免的情况下,一般我们宁可选择代价更小的重绘。
『重绘』不一定会出现『重排』,『重排』必然会出现『重绘』。
重绘(Repaint): 当一个元素的外观发生改变,但没有改变布局,重新把元素外观绘制出来的过程,叫做重绘。表现为某些元素的外观被改变
单单改变元素的外观,肯定不会引起网页重新生成布局,但当浏览器完成重排之后,将会重新绘制受到此次重排影响的部分
重排和重绘代价是高昂的,它们会破坏用户体验,并且让UI展示非常迟缓,而相比之下重排的性能影响更大,在两者无法避免的情况下,一般我们宁可选择代价更小的重绘。
『重绘』不一定会出现『重排』,『重排』必然会出现『重绘』。
展开
2
点赞
setTimeout属于异步任务中的宏任务。当代码按顺序读到setTimeout函数时,会执行它开始计时,计时完成后把setTimeout函数里面的内容放入宏任务队列中等待后续被主线程读取。
如果setTimeout的时间设置非常大,当主任务和微任务中的内容都执行完毕时间都还没结束,那么会等到时间到了再进入宏任务队列并被主线程读取。
如果setTimeout的时间设置比较小,在主任务和微任务中的内容执行完毕之前就结束了,那么它在时间到了以后就会被加入宏任务队列,并且当主任务和微任务内容读取完毕以后会立刻调用宏任务中加入的setTimeout函数里面的内容。只有同步任务执行完了才会去执行异步任务,哪怕异步任务已经到时间了。
在同一环境中有多个setTimeout函数时(都在主任务或者都在微任务中),setTimeout函数中内容被放入宏任务队列的顺序与代码书写的顺序无关,而是与计时器时间设定的长短有关,时间越长则越后加入队列,也越后被读取执行。
如果setTimeout的时间设置非常大,当主任务和微任务中的内容都执行完毕时间都还没结束,那么会等到时间到了再进入宏任务队列并被主线程读取。
如果setTimeout的时间设置比较小,在主任务和微任务中的内容执行完毕之前就结束了,那么它在时间到了以后就会被加入宏任务队列,并且当主任务和微任务内容读取完毕以后会立刻调用宏任务中加入的setTimeout函数里面的内容。只有同步任务执行完了才会去执行异步任务,哪怕异步任务已经到时间了。
在同一环境中有多个setTimeout函数时(都在主任务或者都在微任务中),setTimeout函数中内容被放入宏任务队列的顺序与代码书写的顺序无关,而是与计时器时间设定的长短有关,时间越长则越后加入队列,也越后被读取执行。
展开
评论
点赞
1、返回原数组指定两个下标之间的新数组:slice()
2、删除 插入 替换数组 【参数不同】 :splice()
3、将参数添加到数组的最后,返回新数组的长度:push()
4.删除数组的最后一个元素,返回被删除的值(减少数组的长度):pop()
5.向数组的开头添加一个或多个的元素,并返回新的长度:unshift()
6.删除数组的第一个参数,数组的长度减1:shift()
7.按指定的参数对数组进行排序,返回的值是经过排序后的数组: **sort()
** 8.将数组中的元素进行反转,倒序显示:reverse()
9.用分隔符将数组的元素组成一个字符串:join()
10、从数组的开头向后查找,(接受两个参数,要查找的项和查找起点的位置索引):indexOf()
11、从数组末尾开始获取:lastIndexof()
12、遍历数组:for
2、删除 插入 替换数组 【参数不同】 :splice()
3、将参数添加到数组的最后,返回新数组的长度:push()
4.删除数组的最后一个元素,返回被删除的值(减少数组的长度):pop()
5.向数组的开头添加一个或多个的元素,并返回新的长度:unshift()
6.删除数组的第一个参数,数组的长度减1:shift()
7.按指定的参数对数组进行排序,返回的值是经过排序后的数组: **sort()
** 8.将数组中的元素进行反转,倒序显示:reverse()
9.用分隔符将数组的元素组成一个字符串:join()
10、从数组的开头向后查找,(接受两个参数,要查找的项和查找起点的位置索引):indexOf()
11、从数组末尾开始获取:lastIndexof()
12、遍历数组:for
展开
评论
点赞
赞了这篇文章