写点什么

分析 JavaScript 的性能

  • 2007-09-03
  • 本文字数:845 字

    阅读完需:约 3 分钟

Kirk Pepperdine 在一篇新文章中详细讨论了关于JavaScript 性能的主题。他的第一个发现是JavaScript 引擎规范要比JVM 的脆弱的多。有太多的JavaScript 实现,各自具有不同的执行环境。除了这一点外,他还深入了下列主题:

Getters/Setters

……我所遭遇的最具争议的一项建议,在 Java 世界里已经很久没人提起过了。这项建议是,应该避免使用 getter 和 setter,而应当采用直接访问来避免方法调用的额外开销。这项建议错在哪里?更重要的是,它对在哪里?在 Java 中使用 getter 和 setter 是被普遍认可的……

Ajaxian 和 JQuery 的创建者 John Resig 曾经讨论过 getter 和 setter。就像这个网站所演示的,是出于性能上的考虑。

由于缓存造成的糟糕的局部基准评测(Micro-benchmark

……由于 JavaScript 引擎中少得多的动态优化,有人会觉得局部基准评测要比在 Java 中容易得多。虽然问题是不同的,但是 JavaScript 的局部基准评测也没那么容易。糟糕的局部基准评测的最普遍的原因是缓存。在 Web 世界中缓存无处不在,伴随始终。而且通常它隐藏的很深……

内存泄露

……最有趣的发现是关于内存泄露和内存调优的优秀 blog 很少……我的最大问题是,如何在浏览器中得到来自 JavaScript 的内存泄露呢。我发现有几种好办法。第一个是在 DOM 中保留大量的隐藏元素……另一种更有趣和更可憎的内存泄露来自于闭包……

CPU 负载

……最后,几篇讨论客户机性能的 blog 指出一个存在的问题,但似乎遇到这个问题的 JavaScript 应用程序并不太多。这个问题就是过度使用 JavaScript 会耗尽 CPU……如果你试图让 JavaScript 做太多事情,它就会约束客户机的 CPU 效率(在那种情况下,性能削减的厉害)……

Pepperdine 在结束时提到 Yahoo 的基于 Firebug 的新性能工具 YSlow ,它能够检查大量预先定义好的常见 JavaScript 性能问题。另外一个最近发布的性能工具是 JsLex ,它可以比较 JavaScript 的执行性能,类似于 jProfile。微软研究院也在开发一种调优代理技术,叫做 Ajax View

查看英文原文: Analyzing JavaScript in Respect to Performance

2007-09-03 17:561907
用户头像

发布了 127 篇内容, 共 43.6 次阅读, 收获喜欢 5 次。

关注

评论

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

未来每个人的生活可能都会离不开区块链

CECBC

区块链专家与媒体面对面 | “区块链让数据产生价值”

CECBC

阿里专家离职带出来的Java面试全秘籍,我看了三个月,就收到了京东的offer

Java 程序员 架构 面试 计算机

显示器的未知之海:从电脑窗口到数字世界的Mate级探险

脑极体

5分钟速读之Rust权威指南(七)

wzx

rust

超详细!看完阿里大师的Java成长笔记后,差距真不是一点点

Java 程序员 架构 面试

对账模块和赊购退款、还款流程

try catch

支付 退款 对账 赊购

后台开发:核心技术与应用实践 — C++

奔着腾讯去

c++ 面向对象 服务器开发 C++后台开发

中国数字货币释放利好消息!

CECBC

牛!大佬都在用。Ngrok + Metasploit = 暂时性隐蔽C2

Thrash

安全

招行票付通对接总体流程

try catch

支付 商业票据

来自一个DBA的肺腑之言

BinTools图尔兹

数据库 运维自动化 数据安全 dba

“产学合作,协同育人”——安谋中国集成电路人才发展趋势沙龙圆满举行

脑极体

apache dubbo 自定义全局统一的异常处理器

try catch

【得物技术】统一OLAP查询平台之语义层

得物技术

OLAP 查询 得物技术 平台 语义

架构学习笔记:架构设计3原则

风翱

架构 5月日更

工业互联网平台赋能需充分挖掘数据价值

逻辑回归 - DAY 11

Qien Z.

线性回归 逻辑回归 5月日更 逻辑函数

多租户如何独立进行开发测试?

paraboy1

C#常用特性和快捷键

fox

520单身福利

Flink的分布式缓存

大数据技术指南

flink 5月日更

专访新腾数致研发总监金涛:新思想、新工具与新效率

CODING DevOps

敏捷开发 研发团队

521的祝福-北爱的回忆

数据一哥

520单身福利 520 单身福利

拍照被嫌弃,他用分布式技术开发了一款自拍神器

科技汇

CODING 首届金融科技技术交流闭门会议顺利召开

CODING DevOps

DevOps DevSecOps 代码安全

波特五力模型

石云升

创业 战略 职场经验 5月日更

智慧公安微警务APP搭建,公安信息化建设

数据仓库如何确定主题域?

数据社

数据仓库 5月日更

11 步完美排查服务器! 是否已经被入侵

Thrash

安全

只需三步,开启 API 文档简洁之美

CODING DevOps

API

支付网关整体架构图

try catch

支付 支付网关

分析JavaScript的性能_Java_Scott Delap_InfoQ精选文章