测试JavaScript字符串处理性能

主要是测试了数组 push()方法与直接相加这两种在JS引擎上性能的实际处理情况。程序代码简单明了,没什么好解释的:

var oldtime = new Date().getTime();
var str = [];
for(i=0;i<100000;i++)
{
   str.push('abcabcabcabcabcabcabcabcabcabcabcabc');
}
var newtime = new Date().getTime();
var joinTime = (newtime - oldtime);

var oldtime = new Date().getTime();
var str='';
for(i=0;i<100000;i++)
{
   str += 'abcabcabcabcabcabcabcabcabcabcabcabc';
}
var newtime = new Date().getTime();
var concatTime = (newtime - oldtime);

alert("join / concat: " + (joinTime * 1.0 / concatTime));

注:循环次数必须足够大。

2010年1月22日更新:

请阅读yemoo写的文章:《再谈“字符串拼接”的效率》—ps.yemoo是2009年4月29日写的,本人又“火星”了。推荐文章中的方法:用 arr[arr.length]=’string’ 来存入。

posted on 2009-12-07 16:07  豆豆の爸爸  阅读(473)  评论(0编辑  收藏  举报