JS字符串加不同浏览器比较

本文通过对比不同浏览器环境下原始字符串加法与数组拼接法的性能差异,展示了在处理大量数据时,数组拼接法在多数浏览器中具有更好的性能表现,尤其是在IE系列浏览器中优势更为明显。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


function StringBuffer() {
this._strs = new Array;
}

StringBuffer.prototype.append = function (str) {
this._strs.push(str);
};

StringBuffer.prototype.toString = function() {
this._strs.join("");
};


10000条记录,原始字符串加和数组拼接的对比:

firefox3.5:
原始:2-3秒
拼接:1-2秒

ie7:
原始:313-328秒
拼接:78-94秒

ie6:
原始:143秒
拼接:63秒

chrome:
原始:1秒
拼接:3秒

当记录上升到100000条的时候:

ie7:
原始:62602秒
拼接:1327秒

firefox3.5:
原始:15-18秒
拼接:28秒

chrome:
原始:28-31秒
拼接:31秒

说明在新的高版本浏览器,js虚拟机的性能对于字符串加的操作已经优化很多了。但是ie依然是比较差,不过没有测试ie8,不知道速度如何。
对于大数据量,其实直接加和拼接对于firefox速度上差别不大,但是这仅仅测试的是速度,从内存占用来看,拼接所占用的肯定是比原始加要少很多。可惜ie依然是大部分市场,特别是ie6,所以从性能上来看,还是拼接来的保险。或者说拼接其实就是专门用来优化ie的。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值