您现在的位置是:网站首页> 编程资料编程资料
JavaScript延迟加载之async与defer的应用_javascript技巧_
2023-05-24
344人已围观
简介 JavaScript延迟加载之async与defer的应用_javascript技巧_
async 跟 defer的应用场景:
一些特殊的场景, 比如说你的dom要更新完 才能去执行js里面的东西, 但是js是单线程了的,读取js是需要时间的, 但是你又想js文件中获取到 dom的节点信息, 这个时候 你就可以用 async 或者defer了, 来处理你的这个情况
一般我们为了节约浏览器的渲染时间, 都是把script脚本放到 body> 后面,防止js读取跟执行占用我们html的渲染时间, 下面只是为了举例子
请看例子
Document
index.js
const box = document.getElementById("box"); console.log(box); 因为js是从上到下执行了, 所以我们这里打印出的值是 null,他获取不到div的节点信息

我们通过 async 跟 defer 就可以获取到下面的 dom信息
Document // 或者这里写 defer
这里就拿到了 节点信息

defer跟 async的区别

defer: 等在html解析完成才会,依次从上到下执行js脚本代码
async: async跟html是同步解析的执行顺序是谁先完成js脚本,就谁先执行
async
Document // 这里的执行顺序 是谁先完成就谁先执行
defer
Document // defer 是从上到下依次执行的
到此这篇关于JavaScript延迟加载之asyc与defer的应用的文章就介绍到这了,更多相关JSt延迟加载内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
您可能感兴趣的文章:
相关内容
- 关于el-select组件设置默认值的实现方式_vue.js_
- JavaScript 逻辑且(&&)和逻辑或(||)的运用小结_javascript技巧_
- 一文学会如何升级npm管理的各依赖版本_node.js_
- JS中art-template模板使用过滤器问题_javascript技巧_
- Node.js实现下载文件的两种实用方式_node.js_
- @vue/cli4升级@vue/cli5 node.js polyfills错误的解决方式_vue.js_
- js通过var定义全局变量与在window对象上直接定义属性的区别说明_javascript技巧_
- 如何使用moment.js获取本周、前n周、后n周开始结束日期及动态计算周数_javascript技巧_
- Vue取消Axios发出的请求_vue.js_
- 一文带你快速学会JavaScript条件判断及高级用法_javascript技巧_
