写点什么

研究 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:441144
用户头像

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

关注

评论

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

从西方舶来品到中国智造,美的R6强势引领嵌入式厨电风向标

Geek_2d6073

直播预告 | Homebrew 作者 Max Howell:如何打造杰出的开发者工具

玩转Devop和研发效能DevStream/DevLake

#开源

软件测试 | 测试开发 | App常见bug解析

测吧(北京)科技有限公司

bug

Spring Security系列教程06--前后端分离时的安全处理方案

一一哥

前后端分离 springsecurity 认证授权

掌握这些核心算法,拿不到10个offer你来找我,我锤你个不争气的

收到请回复

Java 架构 算法 编程语言 语言 & 开发

大咖说·图书分享|混合云架构

大咖说

架构 混合云

Keepalived+HAProxy 搭建高可用负载均衡

CTO技术共享

DevOps技术产品链

CTO技术共享

学习开发技术有哪些比较好的方法?

小谷哥

怎么选择Java培训班?

小谷哥

Java培训的主要内容是什么?

小谷哥

4步教你做一个煤气安全提示神器

华为云开发者联盟

云计算 后端 物联网 IoT

Spring Security系列教程08--基于默认数据库模型实现授权

一一哥

数据库 spring security

Databend 源码阅读系列(二):Query server 启动,Session 管理及请求处理

Databend

query query分析 大数据 开源 #开源 databend

TDesign「issue一夏·疯狂的代码&设计」主题赛事火热进行中

TDesign

腾讯 前端

软件测试 | 测试开发 | App测试时常用的adb命令你都掌握了哪些呢?

测吧(北京)科技有限公司

app测试

Spring Security系列教程10--基于过滤器实现图形验证码

一一哥

spring security Spring Boot 2 图片验证码

JPEX 围绕世界杯打造“平台 + 运动”新生态,为 JPC 深度赋能

股市老人

百万粉丝养成记:写作4步法,解决文案创作的80%问题!

图灵教育

写作 脑科学

软件测试 | 测试开发 | 白盒测试方法论

测吧(北京)科技有限公司

白盒测试

如何从零开始参与 Apache 顶级开源项目?| 墙裂推荐

SelectDB

数据库 开源 程序员 社区贡献 企业号九月金秋榜

百万粉丝养成记:写作4步法,解决文案创作的80%问题!

图灵社区

写作 脑科学

Spring Security系列教程07--基于内存模型实现授权

一一哥

spring springboo Spring Security OAuth

java课程培训学习能成为合格的程序员吗?

小谷哥

SRE 运维体系 CTO技术共享

CTO技术共享

web前端开发技术培训学习前景

小谷哥

【Metaverse系列三】虚幻引擎的故事

ThingJS数字孪生引擎

元宇宙 虚幻引擎

兆骑科创双创服务平台,项目对接,人才引进

兆骑科创凤阁

Spring Security系列教程09--基于自定义数据库模型实现授权

一一哥

spring security Spring Boot 2

Spring Security系列教程01--Spring Security系列教程简介

一一哥

spring security

JVM 优化踩坑记

PPPHUANG

JVM GC G1垃圾回收器 Java core

研究JavaScript性能_Java_James Carr_InfoQ精选文章