当前位置: 首页 > 图文教程 > 网络编程 > Javascript > JavaScript中全局变量、函数内变量以及常量表达式的效率测试

Javascript
JS暴虐查找法简洁版
JavaScript数组问题解决的多种方法
比较炫的图片播放器 js 焦点效果代码
js iframe网站后台左右收缩型页面脚本
javascript完美随机广告代码
北京奥运会倒计时代码
javascript 数据结构的题
js停止输出代码
兼容多浏览器的字幕特效Marquee的通用js类
IE8 引入跨站数据获取功能说明
javascript 支持ie和firefox杰奇翻页函数
js添加删除行和双击变文本框的脚本
JavaScript 版本自动生成文章摘要
用js遍历 table的脚本
用JavaScript实现UrlEncode和UrlDecode的脚本代码
css把超出的部分显示为省略号的方法兼容火狐
javascript IE中的DOM ready应用技巧
js退弹 IE关闭时弹出广告代码,可以防止屏蔽
js类中的公有变量和私有变量
兼容firefox的给每一个onClick再附加一个事件

Javascript 中的 JavaScript中全局变量、函数内变量以及常量表达式的效率测试


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 422 ::
收藏到网摘: n/a

直接用字符串常量要比利用全局变量快,但创建正则表达式就比起用全局变量要慢上很多了。


[Ctrl+A 全选 提示:你可先修改部分代码,再按运行]

注意:在IE中进行这个测试时需要先改变IE的"最大脚本步数":
[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Styles]
"MaxScriptStatements"=dword:ffffffff
这么看的话使用函数内的本地变量时效率要比用全局变量或者常量表达式高出许多。而属性的效率就糟得很恐怖了,在Firefox和Safari中居然比利用全局变量还慢上好多倍。
直接用字符串常量要比利用全局变量快,但创建正则表达式就比起用全局变量要慢上很多了。
观察数字还可以发现:在Google Chrome、Opera和IE中,用属性和利用全局变量相差不大(Opera的表现也许是其垃圾回收机制造成的),从这个现象上看的话,这三种浏览器中所谓的全局变量有可能根本就是全局对象的属性。