<script type="text/javascript">
</script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
第一组测试的结果如下表所示。表中的数值是在不同方案下1000次asp页面调用的平均执行时间,以秒计(每次执行asp页面时测试例程执行一次)。 方案
语言*** 字符串翻转* 字符串查找** 正则表达式模式匹配* 位移操作* 简单数学计算* 复杂数学计算**
vb - vb 2.245 2.038 4.452 2.200 2.173 2.151
js - js 2.690 2.214 2.635 2.166 2.288 2.313
vb - js 3.522 - 3.430 3.035 - 3.178
js - vb 3.185 - 5.368 3.103 - 3.004
*运行96次,其中:24次是 VBScript测试工具页面、iis默认脚本语言 VBScript;24次是 JScript测试工具页面、iis默认脚本语言 VBScript;24次是 VBScript测试工具页面、iis默认脚本语言 JScript;还有24次是 JScript测试工具页面、iis默认脚本语言 JScript。为了减小次序带来的影响,第一、三、四、六测试例程的方案所运行的次序每次都经过改变。上表所显示的时间是96次运行的平均时间。所有细节数据都可以在下载包的data.xls文件内找到。
**使用 VBScript测试工具页面运行24次,iis脚本语言设置成 VBScript(没有运行其他的测试工具页面和默认脚本语言的组合,因为在最初的运行中它们没有显示出任何次序或时间差异上的影响)。
***vb代表 VBScript,js代表 JScript。两种语言中的前一种是页面的基本语言,第二种是内嵌代码所用的语言。内嵌代码不用于不需要使用它的场合。
大多数测试结果的含义都非常明显,但应注意两个可能令人惊奇的结果。我们知道, JScript通过string对象的方法处理正则表达式,具有更好的灵活性,而 VBScript需要实例化regexp对象的开销。但令人惊奇的是,完全用 VBScript编写的代码比以 VBScript为基本语言、用内嵌 JScript函数完成模式匹配操作的代码要慢。显然,实例化 VBScript的regexp对象需要非常可观的时间开销。
第二个令人惊奇的地方是,虽然事实证明 JScript的位操作总是要比vbscirpt的快,但在这些测试中两者的时间差异非常小。
第二组测试的结果如下表所示。表中的数值表示不同方案下单个asp页面的平均执行时间,以秒计(每执行一次asp页面,测试例程运行多次)。 方案
语言** 字符串翻转(1) 字符串搜索(3) 正则表达式模式匹配(2) 位移操作(3) 简单数学计算(1) 复杂数学计算(3) 数组初始化(1) 记录集遍历(4)
vb - vb 0.120 0.346 2.250 0.200 0.287 0.328 2.182 0.524
js - js 2.589 0.998 0.138 0.036 0.426 0.499 9.120 0.641
vb - js 3.066 - 0.221 0.890 - 1.310 - -
js - vb 0.472 - 2.363 0.769 - 0.671 - -
*每种情形用 VBScript测试工具页面运行24次,iis的默认脚本语言是 VBScript(没有运行其他的测试工具页面和iis默认脚本语言组合,因为在最初的运行中它们没有显示出任何次序或时间差异上的影响)。为了减小次序带来的影响,第一、三、四、六测试例程的方案所运行的次序每次都经过改变。上表所显示的是24次运行的平均时间,所有细节数据都可以在下载包的data.xls内找到。
**vb代表 VBScript,js代表 JScript。两种语言中的前一种是页面的基本语言,第二种是内嵌代码所用的语言。内嵌代码不用于不需要使用它的场合。
100,000 次迭代
1,000次迭代
10,000次迭代
830个记录的外部循环,14个字段的内部循环(总共11,620次迭代)
这些测试结果更清楚地证实了两种语言的区别所在。从数学计算的结果可以看出, VBScript在这方面要比 JScript快——除了位移操作之外( JScript本身支持位移操作,而 VBScript不支持)。
两种语言最显著的区别在于字符串翻转、字符串搜索和数组初始化,所有这些测试项目中 VBScript都占优势。
字符串翻转操作是 VBScript本身所支持的,在该项测试中两者差别尤其明显。在这个测试中,两者的差异之大使得采用内嵌 VBScript strreverse()函数也要比用 JScript编写该函数快。
在那些数据改动非常频繁使得手工构造数据失去现实意义的应用中,数据库记录集遍历是一种相当常见操作,因此,上述测试结果中 VBScript和 JScript在记录集遍历上的差异可能会给那些认为 JScript优于 VBScript的人一些警示。然而,这种执行时间上的差异也可以用如下事实来辩解,即我们为记录集中的每个记录分别实例化了一个enumerator对象(总共达到了830次!)。
从第一组测试的结果中已经可以看出,正则表达式模式匹配是 JScript绝对优于 VBScript的一个地方,所以这一组的测试结果并不令人奇怪。这里的测试结果证实了上一组的测试结果,但差异程度有所放大。
< <script type="text/javascript"> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
<script type="text/javascript">
</script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
转自: chinabyte
第一组测试的结果如下表所示。表中的数值是在不同方案下1000次asp页面调用的平均执行时间,以秒计(每次执行asp页面时测试例程执行一次)。 方案
语言*** 字符串翻转* 字符串查找** 正则表达式模式匹配* 位移操作* 简单数学计算* 复杂数学计算**
vb - vb 2.245 2.038 4.452 2.200 2.173 2.151
js - js 2.690 2.214 2.635 2.166 2.288 2.313
vb - js 3.522 - 3.430 3.035 - 3.178
js - vb 3.185 - 5.368 3.103 - 3.004
*运行96次,其中:24次是 VBScript测试工具页面、iis默认脚本语言 VBScript;24次是 JScript测试工具页面、iis默认脚本语言 VBScript;24次是 VBScript测试工具页面、iis默认脚本语言 JScript;还有24次是 JScript测试工具页面、iis默认脚本语言 JScript。为了减小次序带来的影响,第一、三、四、六测试例程的方案所运行的次序每次都经过改变。上表所显示的时间是96次运行的平均时间。所有细节数据都可以在下载包的data.xls文件内找到。
**使用 VBScript测试工具页面运行24次,iis脚本语言设置成 VBScript(没有运行其他的测试工具页面和默认脚本语言的组合,因为在最初的运行中它们没有显示出任何次序或时间差异上的影响)。
***vb代表 VBScript,js代表 JScript。两种语言中的前一种是页面的基本语言,第二种是内嵌代码所用的语言。内嵌代码不用于不需要使用它的场合。
大多数测试结果的含义都非常明显,但应注意两个可能令人惊奇的结果。我们知道, JScript通过string对象的方法处理正则表达式,具有更好的灵活性,而 VBScript需要实例化regexp对象的开销。但令人惊奇的是,完全用 VBScript编写的代码比以 VBScript为基本语言、用内嵌 JScript函数完成模式匹配操作的代码要慢。显然,实例化 VBScript的regexp对象需要非常可观的时间开销。
第二个令人惊奇的地方是,虽然事实证明 JScript的位操作总是要比vbscirpt的快,但在这些测试中两者的时间差异非常小。
第二组测试的结果如下表所示。表中的数值表示不同方案下单个asp页面的平均执行时间,以秒计(每执行一次asp页面,测试例程运行多次)。 方案
语言** 字符串翻转(1) 字符串搜索(3) 正则表达式模式匹配(2) 位移操作(3) 简单数学计算(1) 复杂数学计算(3) 数组初始化(1) 记录集遍历(4)
vb - vb 0.120 0.346 2.250 0.200 0.287 0.328 2.182 0.524
js - js 2.589 0.998 0.138 0.036 0.426 0.499 9.120 0.641
vb - js 3.066 - 0.221 0.890 - 1.310 - -
js - vb 0.472 - 2.363 0.769 - 0.671 - -
*每种情形用 VBScript测试工具页面运行24次,iis的默认脚本语言是 VBScript(没有运行其他的测试工具页面和iis默认脚本语言组合,因为在最初的运行中它们没有显示出任何次序或时间差异上的影响)。为了减小次序带来的影响,第一、三、四、六测试例程的方案所运行的次序每次都经过改变。上表所显示的是24次运行的平均时间,所有细节数据都可以在下载包的data.xls内找到。
**vb代表 VBScript,js代表 JScript。两种语言中的前一种是页面的基本语言,第二种是内嵌代码所用的语言。内嵌代码不用于不需要使用它的场合。
100,000 次迭代
1,000次迭代
10,000次迭代
830个记录的外部循环,14个字段的内部循环(总共11,620次迭代)
这些测试结果更清楚地证实了两种语言的区别所在。从数学计算的结果可以看出, VBScript在这方面要比 JScript快——除了位移操作之外( JScript本身支持位移操作,而 VBScript不支持)。
两种语言最显著的区别在于字符串翻转、字符串搜索和数组初始化,所有这些测试项目中 VBScript都占优势。
字符串翻转操作是 VBScript本身所支持的,在该项测试中两者差别尤其明显。在这个测试中,两者的差异之大使得采用内嵌 VBScript strreverse()函数也要比用 JScript编写该函数快。
在那些数据改动非常频繁使得手工构造数据失去现实意义的应用中,数据库记录集遍历是一种相当常见操作,因此,上述测试结果中 VBScript和 JScript在记录集遍历上的差异可能会给那些认为 JScript优于 VBScript的人一些警示。然而,这种执行时间上的差异也可以用如下事实来辩解,即我们为记录集中的每个记录分别实例化了一个enumerator对象(总共达到了830次!)。
从第一组测试的结果中已经可以看出,正则表达式模式匹配是 JScript绝对优于 VBScript的一个地方,所以这一组的测试结果并不令人奇怪。这里的测试结果证实了上一组的测试结果,但差异程度有所放大。
< <script type="text/javascript"> </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
<script type="text/javascript">
</script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>