已解决
渲染过程JS 文件的处理方式
来自网友在路上 152852提问 提问时间:2023-10-22 05:41:26阅读次数: 52
最佳答案 问答题库528位专家为你答疑解惑
渲染过程中遇到 JS 文件怎么处理?(浏览器解析过程)
JavaScript 的加载、解析与执行会阻塞文档的解析,也就是说,在构建 DOM 时,HTML 解析器若遇到了 JavaScript,那么它会暂停文档的解析,将控制权移交给 JavaScript 引擎,等 JavaScript 引擎运行完毕,浏览器再从中断的地方恢复继续解析文档。
也就是说,如果你想首屏渲染的越快,就越不应该在首屏就加载 JS 文件,这也是都建议将 script 标签放在 body 标签底部的原因。当然在当下,并不是说 script 标签必须放在底部,因为你可以给 script 标签添加 defer 或者 async 属性。
async 和 defer 的作用是什么?有什么区别?(浏览器解析过程)
(1)脚本没有 defer
或 async
,浏览器会立即加载并执行指定的脚本,也就是说不等待后续载入的文档元素,读到就加载并执行。
(2)defer 属性表示延迟执行引入的 JavaScript
,即这段 JavaScript
加载时 HTML
并未停止解析,这两个过程是并行的。当整个 document
解析完毕后再执行脚本文件,在 DOMContentLoaded
事件触发之前完成。多个脚本按顺序执行。
(3)async
属性表示异步执行引入的 JavaScript
,与 defer
的区别在于,如果已经加载好,就会开始执行,也就是说它的执行仍然会阻塞文档的解析,只是它的加载过程不会阻塞。多个脚本的执行顺序无法保证。
《defer 和 async 的区别》
查看全文
99%的人还看了
相似问题
- 【Vue3】解决Vue打包后上传服务器 资源路径加载错误
- ArcGIS如何处理并加载Excel中坐标数据?
- JVM:字节码文件,类的生命周期,类加载器
- 从复杂大模型加载到3D PDF发布: EVGET HOOPS Framework如何助力高性能3D桌面应用开发?
- PHP手动为第三方类添加composer自动加载
- Arcgis 日常天坑问题2——三维场景不能不能加载kml图层,着手解决这个问题
- 如何在el-tree懒加载并且包含下级的情况下进行数据回显-02
- Arcgis js Api日常天坑问题3——加载geojson图层,元素无属性
- 深度学习(五)softmax 回归之:分类算法介绍,如何加载 Fashion-MINIST 数据集
- 【CASS精品教程】cass3d 11.0加载超大影像、三维模型、点云数据
猜你感兴趣
版权申明
本文"渲染过程JS 文件的处理方式":http://eshow365.cn/6-21368-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!
- 上一篇: C语言、C++操作符优先级
- 下一篇: python免杀初探