最近几个月被业务需求搞的要死,已经到了周末两天都要去加班的地步了。也没机会像之前那样,晚上下班之后到家学习一两个小时了。最近被逼急了,想着这样加班岂不是永远没有学习的时间,没有学习怎么能提升自己,于是晚上决定十一点到家也要翻翻书,哪怕就十几分钟,也比啥也不干强。碰到什么零碎知识点就记下来,有空回顾回顾
- 浏览器解析拿到的html文档时,是按顺序解析html节点的。按顺序将html构建成dom,但是一旦遇到script节点(如果没有defer和async),就会暂停构建dom,转而去执行其中的js代码。js代码可以操作已经存在dom。
为了避免js操作的dom还未存在的情况,所以script标签通常放在html的结尾。 - script标签 async和defer属性的作用(今天听同事聊做面试官的时候问的问题,正好也回顾一下)。这两个属性使得script标签不会阻塞后续html文档生成dom树的过程。两个属性按字面意思,async指异步,js的加载和执行都是并行的。defer指推迟,js并行加载,但是等到dom被完全加载的时候才开始执行。