Javascript 各浏览器的 Javascript 效率对比

2016-02-19 08:59 4 1 收藏

岁数大了,QQ也不闪了,微信也不响了,电话也不来了,但是图老师依旧坚持为大家推荐最精彩的内容,下面为大家精心准备的Javascript 各浏览器的 Javascript 效率对比,希望大家看完后能赶快学习起来。

【 tulaoshi.com - Web开发 】

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

下面是测试的内容:

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

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

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

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

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

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

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

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

来源:http://www.tulaoshi.com/n/20160219/1589048.html

延伸阅读
标签: Web开发
navigator 浏览器对象,包含了正在使用的 Navigator 的版本信息。反映了当前使用的浏览器的资料。JavaScript 客户端运行时刻引擎自动创建 navigator 对象。 更详细的信息可以去查msdn或者Navigator 2.0以后的说明文档,这里我们之做个简单的说明 包括一下几大属性: appCodeName 返回浏览器的码名(?),流行的 IE 和 NN 都返回 'Mozilla'...
标签: Web开发
判断访问者的浏览器是否支持JavaScript和Cookies 许多网站需要客户端做许多复杂的工作,比如:用客户端 JavaScript 进行数据合法性校验,这需要客户浏览器的JavaScript enabled;使用 Session 变量记录身份等信息,需要浏览器 Cookies enabled。因此,有必要确定用户浏览器中的这些选项被打开。在我的网站中,我使用了一串简洁的代码实...
标签: Web开发
基于浏览器类型的重定向的实现可以通过使用javascript函数来检查navigator.userAgent的字符串“MSIE”,它将告诉你用户是否使用Microsoft Internet Explorer(微软的IE浏览器)。通过修改windows.location函数可以重定向到正确的URL(同意资源定位器)。下面是详细的代码: HTML HEAD SCRIPT LANGUAGE="JavaScript" !-- function redirectCli...
标签: Web开发
1.关于prototype:这里prototype是javascript的一个特性,不是那个有名的prototype框架: script type="text/javascript" var string="hello world"; try{   alert(string.phone()); }catch(e){alert(e);} String.prototype.phone=function() {   return "159-10957151"; }   alert(...
标签: Web开发
你可能对于一些其它的编程语言很熟悉,比如C++或者Java等等,它们也是可以创建对象的,现在最新的VB版本VB.NET也具有了更好的面向对象功能-----创建对象。从本质上讲,创建对象的想法只是为了创建一个简单的实体,这个实体包含了许多属性和方法。以下是一个对象构造器的例子: function Person(name, age, colour) { this.name = name; this...

经验教程

543

收藏

40
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部