Comments (11)
两者都不会阻止 document 的解析
defer 会在 DOMContentLoaded 前依次执行 (可以利用这两点哦!)
async 则是下载完立即执行,不一定是在 DOMContentLoaded 前
async 因为顺序无关,所以很适合像 Google Analytics 这样的无依赖脚本
from blog.
async会阻止DOM parase
from blog.
@quanru 不可以啊
因为有可能 js 会修改 dom 啊
普通script标签内有js,带defer的script标签内也有js,都有可能修改DOM。在修改dom这点上,怎么论证“defer不能替代普通的script标签”呢?
from blog.
Defer 会阻止DOM parase
你这图是async运行时会HTML parsing paused,defer不会
from blog.
那是否认为 defer 可以替代普通的 script 标签?
from blog.
@quanru 不可以啊
因为有可能 js 会修改 dom 啊
from blog.
@xiaoyu2er 受教了~
from blog.
赞 多谢分享
from blog.
<script src="script.js"></script>
没有 defer 或 async,浏览器会立即加载并执行指定的脚本,“立即”指的是在渲染该 script 标签之下的文档元素之前,也就是说不等待后续载入的文档元素,读到就加载并执行。
<script async src="script.js"></script>
有 async,加载和渲染后续文档元素的过程将和 script.js 的加载与执行并行进行(异步)。
<script defer src="myscript.js"></script>
有 defer,加载后续文档元素的过程将和 script.js 的加载并行进行(异步),但是 script.js 的执行要在所有元素解析完成之后,DOMContentLoaded 事件触发之前完成。
from blog.
你这图是async运行时会HTML parsing paused,defer不会
他本来说的就是async会阻塞HTML解析,可作者说的是两者都不会阻塞HTML解析,明显是错误的。
from blog.
你这图是async运行时会HTML parsing paused,defer不会
他本来说的就是async会阻塞HTML解析,可作者说的是两者都不会阻塞HTML解析,明显是错误的。
下载的时候不阻塞,执行的时候阻塞。
from blog.
Related Issues (16)
- 44个 Javascript 变态题解析 (上) HOT 25
- 送给产品经理一段代码 (!(~+[]) + {})[--[~+""][+[]] * [~+[]] + ~~!+[]] + ({} + [])[[~!+[]] * ~+[]] HOT 4
- Array.prototype.forEach(callback) 的 callback 到底执行了几次?
- 实现一个 LazyMan
- 易企秀H5项目架构梳理 HOT 6
- 导出微信通讯录到 Excel
- 100*100的 canvas 占多少内存?
- 蚂蚁金服-微贷事业群 招前端
- Google 镜像站搜集(2016年7月3日更新) HOT 1
- 44个 Javascript 变态题解析 (下) HOT 12
- 使用 Gulp 来构建你的 workflow
- <带人的技术> 读书笔记 HOT 5
- comment
- 2016回顾 --- 易企秀H5项目重构总结 HOT 3
- 笔试题
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from blog.