写点什么

研究 JavaScript 性能

  • 2008-02-14
  • 本文字数:625 字

    阅读完需:约 2 分钟

性能问题常常在你开发最新最棒的 web 2.0 应用程序时悄然而至,成为你的绊脚石。很多时候,性能问题仅是由极为平常的良性操作所造成。最近, Coach Wei 许多不同的 Javascript 操作的性能及其在各浏览器下的性能表现作了快速的比较与小结。结果实际上并不完全出乎我们的意料。

正如所料,eval 仍然很“邪恶”,在所有的浏览器下都很慢。但特别有趣的是,说它在 Safari 下性能差似乎并不公平,因为相对于 eval 在 IE7 下需要 172ns,在 Firefox 下需要 546ns 的表现,它在 Safari 下只占用 9.4ns。Shift 和 Join 这些数组操作在众浏览器下都很扯性能的后腿。

在他的结果报告中,有一点很有意思,但也是意料之中的事,那就是,IE 在性能方面的表现不如其它浏览器,尤其是在关键的 computed box model 计算、String 处理、以及 HTML DOM 操作方面。另外,正如我们之前所看到的,虽然较新的浏览器版本有一些改善,但 DOM 操作一般在各浏览器下的开销依旧很大。而且,使用 innerHTML 似乎仍然比完成相同任务的 DOM 操作性能更好。

该研究报告中,其它一些值得关注的要点有:

  • Safari 的 pop 数组操作明显不及其他浏览器的实现。
  • 计算 computed style 和 computed box model 开销可能很大……这可能是由于每次调用对 currentStyle 属性进行重计算所造成。
  • 对象的创建和"in"操作在 Firefox 下运行得比其他浏览器慢。

Coach Wei 的关于比较结果的综合表,很值得一看,很多结果都可以成为你 debug 性能瓶颈时的指南。

查看原文: Studying JavaScript Performance

2008-02-14 22:441477
用户头像

发布了 71 篇内容, 共 22.3 次阅读, 收获喜欢 3 次。

关注

评论

发布
暂无评论
发现更多内容

第二周学习总结

任小龙

模式与重构

满山李子

第三周作业

Geek_5d0795

极客大学架构师训练营

week3 命题作业

任小龙

第三章总结

单例及组合模式实践

WulalaOlala

设计模式 极客大学架构师训练营

重学设计模式之单例模式

设计模式 单例模式 Singleton

区块链中的“链上”和“链下”

CECBC

区块链技术 分布式身份标识 难以篡改

架构师训练营第 3 周 _ 课后作业

方舟勇士

课程作业

第三周总结

Geek_5d0795

极客大学架构师训练营

架构师面试题(2)

满山李子

数字政府升级下的数据产品探索

数据司令

大数据 政务信息化 数字政务

Raft探索历程--Part1

老胡爱分享

分布式协同 raft

Feign Client 原理和使用

Geek_k6ry2n

Spring Boot HTTP

Spring 源码学习 - @Async注解实现原理

Geek_k6ry2n

Spring Boot aop

邮件领域还有创新吗?

池建强

创业 软件 创新 邮件

架构师训练营第三周作业

张锐

架构师训练营 第3周总结

Lingjun

极客大学架构师训练营

设计模式-单例&组合

Z冰红茶

「架构师训练营」第 3 周作业

邓江川。

设计模式学习总结

qihuajun

week3 总结

雪涛公子

架构师训练营 第3周作业

Lingjun

极客大学架构师训练营

易纲:上海可以在人民币自由兑换等方面先行先试

CECBC

数字货币 区块链技术 金融科技中心

week3 作业

雪涛公子

如何搭建一个本地服务器集群

Rayjun

分布式

每周学习总结

Conn

极客大学架构师训练营

创业公司技术体系建设

星际行者

Kubernetes DevOps APM 基础设施

Week01 作业

Conn

架构师训练营 -week3 命题作业

J.Smile

极客大学架构师训练营

Week 03 学习总结 代码重构

Z冰红茶

研究JavaScript性能_Java_James Carr_InfoQ精选文章