1.解决javascript性能问题的本质:
在javascript中,浏览器使用单一进程来处理UI和javascript脚本,在同一个时刻只能做一件事情,所以javascript的脚本执行耗时越久,那么性能就越差
无论是外链还是内链,页面的初始化都需要在脚本初始化之后显示。浏览器从上到下解析html的DOM,当遇到script脚本时,浏览器会停止页面的解析渲染,转去解析js代码,如果js的性能很差,那么就会影响页面的渲染速度,降低用户的体验
2.如何加快页面渲染速度
1)将脚本外链,并放在body的地步:优先加载html的DOM
2)合并脚本,多个脚本合并成一个:使用脚本合并工具
注:在Athena项目中,后期将能够合并的外链js文件都合并掉
3. 无阻塞脚本
1) 延迟的脚本
<script src=”xxx.js” type=”text/javascript” defer></script>
一般只在IE4+和FireFox 3.5+支持 带有defer的script标签可以放在文档的任何位置 对应的javascript文件将在页面解析到script标签时开始下载,并且在onload事件开始之前执行。