Javascript 各浏览器的 Javascript 效率对比


Posted in Javascript onJanuary 23, 2008

从“译言”上的一篇文章据悉各浏览器 Javascript 的对比。我个人作为一名“准”的 Javascript 开发者,对此事自然比较的关注。SunSpider 的测试面我还是保持对其信任的态度的,正如原文所说的“它是一组被精心设计的测试,易于运行也非常全面”。

下面是测试的内容:

3d - 纯粹 JavaScript 的 3D 渲染运算,但并不包含渲染部分。它包含大量的浮点运算和数组操作。 
access - 数组,对象属性和变量的访问读取。 
bitops - 位操作,这在游戏、数学运算和多种编码解码中有重要应用。它也是JavaScript中唯一的整数运算。 
controlflow - 控制流结构 (重复,递归,条件)。目前它主要是递归结构,但其它结构也均被包含。 
crypto - 真实的加密代码,主要为位操作和字符串操作。 
date - "date"对象性能。 
math - 多种数学运算类型。 
regexp - 正则表达式。 
string - 字符串处理,包括生成一个巨型"tagcloud"的代码,解压压缩过的 Javascript 代码等等。 
Javascript 各浏览器的 Javascript 效率对比

除了上述的对比之外,下面的统计图更能直观的对比各浏览器的性能。

Javascript 各浏览器的 Javascript 效率对比
虽然测试所生成的字符串在大部分的生产情况下几乎不可能发生,但我对于 IE 如此低下的运行效率还是颇有微词。排除 IE 最薄弱的字符串操作,本人和原文作者同样的感到惊讶的就是排除字符串的测试, Firefox 的速度并不比 IE 快多少。正如我上次对 Firefox 3beta 评测中期待的,我希望它能运行得更快些。

Safari 也是我一直关注的浏览器,它在此项的测试中的效率还是感到非常满意的。至于 Opera,看得出原文的作者也给予其非常高的评价,“世界上最快的浏览器”这个称号看来的确名至所归。

总结一下,由于现在国内大部分浏览器市场还是 IE 为主,所以根据上述的测试,特别是对于 Javascript 方面,字符串的操作是尤其要考虑下它的性能的。发现 IE 中 Javascript 的正则的运行效率还是比较的满意的,可能以后如果碰到字符串方方面的操作比较,我会优先考虑使用正则。

最后,推荐继续阅读下 原文链接。

Javascript 相关文章推荐
jquery 跨域访问问题解决方法(笔记)
Jun 08 Javascript
从jQuery.camelCase()学习string.replace() 函数学习
Sep 13 Javascript
我的Node.js学习之路(三)--node.js作用、回调、同步和异步代码 以及事件循环
Jul 06 Javascript
javascript实现密码验证
Nov 10 Javascript
[原创]Bootstrap 中下拉菜单修改成鼠标悬停直接显示
Apr 14 Javascript
全面解析Bootstrap中Carousel轮播的使用方法
Jun 13 Javascript
jQuery组件easyui对话框实现代码
Aug 25 Javascript
详谈JavaScript的闭包及应用
Jan 17 Javascript
前端图片懒加载(lazyload)的实现方法(提高用户体验)
Aug 21 Javascript
如何检查一个对象是否为空
Apr 11 Javascript
OpenLayers3实现图层控件功能
Sep 25 Javascript
原生js实现表格循环滚动
Nov 24 Javascript
Javascript 写的简单进度条控件
Jan 22 #Javascript
用jQuery实现检测浏览器及版本的脚本代码
Jan 22 #Javascript
零基础学JavaScript最新动画教程+iso光盘下载
Jan 22 #Javascript
用js 让图片在 div或dl里 居中,底部对齐
Jan 21 #Javascript
jquery 插件 人性化的消息显示
Jan 21 #Javascript
msn上的tab功能Firefox对childNodes处理的一个BUG
Jan 21 #Javascript
利用js跨页面保存变量做菜单的方法
Jan 17 #Javascript
You might like
利用中国天气预报接口实现简单天气预报
2014/01/20 PHP
PHP中UNIX时间戳和日期间的转换与计算实例
2014/11/19 PHP
PHP中file_exists使用中遇到的问题小结
2016/04/05 PHP
自制轻量级仿jQuery.boxy对话框插件代码
2010/10/26 Javascript
jquery事件与函数的使用介绍
2013/09/29 Javascript
js实现倒计时时钟的示例代码
2013/12/17 Javascript
javascript获取checkbox复选框获取选中的选项
2014/08/12 Javascript
JavaScript实现动态创建CSS样式规则方案
2014/09/06 Javascript
基于JavaScript实现动态创建表格和增加表格行数
2015/12/20 Javascript
jQuery中的一些小技巧
2017/01/18 Javascript
JQuery 封装 Ajax 常用方法(推荐)
2017/05/21 jQuery
JS+Ajax实现百度智能搜索框
2017/08/04 Javascript
jQuery中过滤器的基本用法示例
2017/10/11 jQuery
Vue v-for循环之@click点击事件获取元素示例
2019/11/09 Javascript
node.js基于dgram数据报模块创建UDP服务器和客户端操作示例
2020/02/12 Javascript
详解vue高级特性
2020/06/09 Javascript
vue自定义插件封装,实现简易的elementUi的Message和MessageBox的示例
2020/11/20 Vue.js
echarts浮动显示单位的实现方法示例
2020/12/04 Javascript
Python sys.path详细介绍
2013/10/17 Python
Python实现基于权重的随机数2种方法
2015/04/28 Python
在Django框架中运行Python应用全攻略
2015/07/17 Python
Numpy数组的保存与读取方法
2018/04/04 Python
Python Django Vue 项目创建过程详解
2019/07/29 Python
tensorflow 环境变量设置方式
2020/02/06 Python
Python解释器及PyCharm工具安装过程
2020/02/26 Python
python安装dlib库报错问题及解决方法
2020/03/16 Python
canvas 下载二维码和图片加水印的方法
2018/03/21 HTML / CSS
是否有自动比较结构的方法
2015/06/03 面试题
学生发电厂实习自我鉴定
2013/09/22 职场文书
药品营销策划方案
2014/06/15 职场文书
工会文体活动总结
2015/05/07 职场文书
货款欠条范本
2015/07/03 职场文书
javaScript Array api梳理
2021/03/31 Javascript
MySQL Innodb关键特性之插入缓冲(insert buffer)
2021/04/08 MySQL
Ubuntu安装Mysql+启用远程连接的完整过程
2022/06/21 Servers
win10识别不了U盘怎么办 win10系统读取U盘失败的解决办法
2022/08/05 数码科技