原创 前端面试题 如何优化DOM操作的性能?

发布时间:2019-09-26 10:14:53 浏览 1536 来源:博学谷 作者:照照

      众所周知,在富网页应用中编写脚本时,无可避免地要跟DOM打交道,但是频繁地对于DOM进行操作,又会导致损耗性能,那么如何才能优化这个性能瓶颈呢?其实这也是前端面试的必考题,一般来说有大致七种方式,归纳起来都是从三种角度出发,即访问和修改DOM元素;修改DOM样式;通过DOM事件处理程序来响应用户。下面我们来详细讲解一下优化DOM操作的性能。

     

    优化DOM操作的性能

     

    1、查找元素的优化。因为 ID 是唯一的,也有原始的方法,因此使用ID 查找元素是最快的,其次的是根据类和类型查找元素,通过属性查找元素是最慢的,因此应该尽可能的通过 ID 或者类来查找元素,避免通过属性来查找元素。

     

    2、减少访问和改变DOM元素,包括添加,修改,删除DOM。改变DOM就会引起浏览器渲染,而渲染是相当慢的,因此应该避免不必要的渲染。

     

    3、减少改变DOM的样式类等。改变DOM元素的样式,类也会导致浏览器渲染,因此也应该减少不必要的操作。

     

    4、批量修改DOM时从文档流中摘除该元素 ,对其应用多重改变 , 将元素带回文档中 , 这样可以最小化重绘和重排版 。

     

    具体方法:

     

    (1)隐藏元素,进行修改,然后再显示它。

     

    (2)将原始元素拷贝到一个脱离文档的节点中,修改副本,然后覆盖原始元素。

     

    5、减少 iframeiframe 需要消耗大量的时间,并阻塞下载,建议少用。

     

    6、样式放在 header 中,脚本放在关闭标签</body>之前样式放在。header 中,可以加快渲染,脚本放在关闭标签</body>之前可以加快下载速度,不免阻塞下载。

     

    7、使用事件委托,减少绑定事件的数量。多次访问同一DOM,应该用局部变量缓存该DOM。

     

    以上就是如何优化DOM操作的性能的具体方法。相信看完本篇文章,大家如果在前端面试题再遇到这样的问题,就可以能轻松应对啦。

     

    申请免费试学名额    

在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!

上一篇: 前端页面如何优化?解决方案讲解 下一篇: 30道常见Web前端面试题你会几个?

相关推荐 更多

    推荐课程

  • 零基础入门前端开发公开课

    免费 基础 1507

  • Flutter从入门到进阶 企业级租房网项目实战

    ¥499 进阶 156

  • 前端电商项目课程

    免费 进阶 1506

  • jQuery 理论与实践

    免费 基础 794

  • HTML+CSS入门基础教程

    免费 基础 2192

热门文章

  • UI设计培训费用要多少钱?靠不靠谱?
  • 哪个Python培训机构好些?怎么选?
  • 这样的Java自学姿势 学废最快
  • 2021年大数据行业发展前景及岗位方向如何?
  • Web前端开发工程师培训班哪家好?
  • 互联网产品经理岗位现在有多热门?
  • 前端测试用例怎么写?为什么写测试用例?
  • 有哪些好的线上培训产品经理的机构?
  • 零经验的人学编程难吗?能学会吗?
  • 传智博学谷神经网络和深度学习课程推荐
  • 查看更多

扫描二维码,了解更多信息

博学谷二维码