预解析
Webkit和Firefox都有这种优化。当执行一个脚本时,另一个线程处理文档的其余部份,找出需要从网络下载的其它资源并装载它。这样以来资源可以用并发连接加载,能提高整体速度。注意—预解析不修改DOM树,把DOM树留给了主解析器,它只处理外部资源引用象外部脚本,样式表和图片。
样式表
另一方面样式表的模式有所不同。概念上,因为样式表不改变DOM树,没必要等待它们并且停止文档处理。因此就有了一个关于脚本在文档解析阶段请求样式信息的问题。如果样式仍未被加载和处理,脚本就会获得错误的结果,很明显这会导致很多问题。这看起来是个极端情况,但实际上很常见。Firefox在有个样式表正在加载和执行时中断所有脚本运行。Webkit只在脚本试图访问某种可能会受到未加载的样式表影响的样式信息时中断脚本解析和执行。
关于浏览器解析JavaScript的部份在后面单独一章叙述。
(待续)
原创文章,作者:苏葳,如需转载,请注明出处:https://www.swmemo.com/2057.html