针对 Internet Explorer 的 Javascript 优化

标签 javascript performance google-chrome browser internet-explorer-8

众所周知,与 Chrome、Safari (Webkit) 或 Firefox (Mozilla) 相比,Internet Explorer Javascript 引擎在性能方面远远落后,尤其是 IE 8 及更早版本。

在开发具有重要 javascript 功能的 Web 应用程序时,IE 的性能比其他的要差得多。

是否有任何实践可以帮助改进您的 javascript 代码,从而使优秀表现者(非 IE)和表现不佳者(IE)之间的差距不那么大?

最佳答案

另外几个常见的解决方案:

缓存经常使用的 DOM 节点,不要在同一个函数中再次重新计算它们。例如。而不是

$(id).parentNode.something();
$(id).parentNode.somethingOther();

使用

var e = $(id).parentNode;
e.something();
e.somethingOther();

从外部范围缓存常用对象。例如。而不是

if (this.options.type == 'a') {
    // ...
} else if (this.options.type == 'b') {
    // ...
}

使用

var type = this.options.type;
if (type == 'a') {
    // ...
} else if (type == 'b') {
    // ...
}

这也会对缩小前后的代码大小产生积极影响。

关于针对 Internet Explorer 的 Javascript 优化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8845877/

相关文章:

java - 多核场景下编写java程序的技巧

python - 如何提高数组大小 9e3 的列表理解速度?

html - 为什么 Google 搜索在使用 FireFox 和 Chrome 时表现不同?

javascript - 将实时 html 内容从一个 div 复制到另一个

javascript - 在 React 组件外声明一个 const 以在不同的地方使用它

javascript - client.on 不是函数 ZeroClipboard/Javascript

apache - XAMPP 虚拟主机不工作

javascript - 找出哪个下拉菜单项应该处于事件状态的最佳方法是什么?

Java JDBC 效率 : How long should a connection be maintained?

javascript - Javascript 中的变量未更新