在IE中,JavaScript的执行速度比Firefox、Safari和Chrome要慢。

4

在IE中,Java-script加载比Firefox、Safari和Chrome慢吗?

有没有一种方法可以在IE中快速加载JavaScript?

通常的最佳实践是将JavaScript保留在页面底部,这会使IE中的Js呈现更加缓慢吗?

编辑:

当我们为网站应用任何jQuery插件以使其具有可用性或交互性时,在IE中效果显示比其他浏览器慢。

我们可以在加载JS之前和之后轻松识别页面上条件的影响,这看起来很奇怪。


3
"一般最佳实践是将JavaScript放在页面的底部" - 如果您使用document.ready/window.load,这不是一个问题。你如何提出这样糟糕的问题却获得了这么多声望。 - Matt Mitchell
2
你是在谈论代码的执行还是下载?DOM锁定?请更具体地说明问题,而不是只说“JavaScript 加载较慢”。 - Ben Rowe
1
@Graphain 这是一种好的实践方法,虽然不能很大程度地提高JavaScript执行速度,但对整个页面加载时间非常有帮助。 - gblazex
1
我请求SO管理员撤销我所有的声望,因为我并不需要它们。我只是随心所欲地提问,并且依赖于SO的用户来获得比谷歌更好、更快的答案。如果有人对我的问题有意见,请告诉SO管理员不要给我任何问题的声望。 - Jitendra Vyas
@galambalaz - 它如何影响整个页面加载时间?页面下载大小相同,您已经说过它不会影响JS速度。 - Matt Mitchell
1
@Graphain脚本会阻塞其他组件。但是,如果它们位于底部,则没有其他内容需要阻塞,因此页面加载更加流畅:http://developer.yahoo.com/performance/rules.html#js_bottom - gblazex
5个回答

9
IE8或更低版本的JavaScript引擎很糟糕,在IE8中有所改善,但相对而言,它仍然落后很多......如果你正在进行任何大量操作,那么你无法做太多事情。
JavaScript每个页面都会加载和解析,因此引擎越慢,加载就越慢......这也是IE的情况。将JavaScript保留在<body>底部是一个选项,以防止阻塞,但可能你的问题不是加载(如果你的头文件设置正确,则会从缓存中加载),而是执行
如果安慰一下,似乎IE9至少比IE8有了重大进步。

如果你想要加速网页加载速度,有几个方面需要考虑。Google提供了一个很好的清单Yahoo也有类似的内容


从JavaScript中删除所有空格可以帮助IE加载速度吗? - Jitendra Vyas
1
@metal-gear-solid - 当然可以。在它们上面运行YUI压缩程序:http://developer.yahoo.com/yui/compressor/ - Gert Grenander
3
@metal-gear-solid - 是的,但在大多数情况下(我特别是在谈论空格方面)影响微乎其微。由于内容应通过gzip传递,尤其是空格将不会产生太大影响,但压缩重命名变量等操作会有影响。 - Nick Craver

1

这并不是针对IE的,但BetterExplained提供了一些有关如何增加加载时间或在某些情况下改善网页响应时间的好建议。


1

就当今的浏览器而言,IE8的JS引擎速度较慢,但IE9的表现会更好

执行时间是导致速度变慢的原因。不幸的是,你无法做太多事情来解决它。


1

我相信你在谈论不美观的FOUC(未经样式处理的内容闪烁)。

Paul Irish提供了一些避免这种情况的技巧,这在ie浏览器中更为普遍。


0

对于大多数交互式 JavaScript,也就是你在大多数网站上找到的那种,你不应该看到太大的差异。然而,如果你的脚本中有很多循环或者进行了大量计算,那么你会发现各种 JS 引擎之间存在巨大差异。根据我的经验,Chrome > Firefox > IE 在 JS 引擎速度方面。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接