大量的字符串拼接 JS 中DIY的StringBuffer.

本文分享了在项目中遇到的字符串拼接导致性能下降的问题,并提供了一个缓解此问题的方法。通过自定义字符串拼接函数,实现了较高效的数据处理流程。

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

 最近项目中进行了较多或者大量的字符串拼接,一直影响和困扰着软件的正常速度运行。也就是说,某些模块速度越来越慢,为了解决这个不是问题的头疼问题,想尽了一切办法 ,现在把字符串拼接的函数实现如下 ,但不感觉这是最完美的解决方案,这种办法,如果,字符串中“:”多个,它只能读到第二个。

  尽管不完美,但还是起到了缓解速度慢的情况。。。遇到好的处理办法,再更新处理办法 ?!!!

 

 function dataToArray(str)   //接收的字符串转成数组,返回数组
 {
 var sumjilu=new Array();
 str=str.substring(2,str.length-2);
 sumjilu=str.split("},{");
 return sumjilu;
 }

 function GetJilu(str,i) //获取某条记录 返回字符串
 {
   // alert(dataToArray(str)[i]);
   return dataToArray(str)[i];
 }

 function GetZiduan(jilustr,mc)  // 获取某条记录 某个字段的值
 {
 jilustr=","+jilustr+","; //因为最后必须",结束
  var start_wz=jilustr.indexOf(','+mc+':');
   var temp_str=jilustr.substring(start_wz+mc.length+1,jilustr.length);
  var end_wz=temp_str.indexOf('/",');
   var temp_jiguo_str=temp_str.substring(2,end_wz);
    return temp_jiguo_str;
 }
 function StringBuffer() {
    this.__strings__ = new Array;
}

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

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

 

json数组的效率经过测试没有上面的串接速度快。。。前提是字符串在百K以上。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值