你需要了解的JavaScript(一)

2017-08-24  本文已影响0人  左冬的博客

JavaScript的发展历史

JavaScript因浏览器而生,回顾它的历史要从浏览器的历史讲起。

浏览器的渲染机制

白屏&FOUC (Flash of Unstyled Content) 无样式内容闪烁

不同的浏览器资源加载方式不同,或者有不同的渲染机制,所以会出现白屏或者FOUC。

样式、JS 在 HTML 中如何放置?

Repaint 和 Reflow

页面设计中,不可避免的需要进行repaint和reflow。

回流必引起重绘,而重绘不一定引起回流。

在性能优先的前提下,性能消耗reflow大于repaint,下文将重点总结关于reflow的触发场景及优化。

如何异步加载脚本

<script>的六个属性

没有deferasync,浏览器会立即加载并执行指定脚本,“立即”指的是在渲染该script标签之下的文档元素之前,也就是说不等待后续载入的文档元素,读到就加载并执行。
<script async src="script.js"></script>,加载和渲染后续文档元素的过程将和script.js的加载执行并行进行(异步)。
异步脚本一定会在页面的load事件前执行
<script defer src="script.js"></script>,加载后续文档元素的过程和script.js的加载并行进行(异步),但script.js的执行要在所有元素解析完成后,DOMContentLoaded事件触发之前完成。

参考资料:
上一篇 下一篇

猜你喜欢

热点阅读