JS字符串内容每3个句号分成一个数组

其实实现的方法很简单, 只要稍微了解数组和字符串的转换就可以完成操作

第一种方法:

第一种方法就是少创建一个数组, 代码可读性比较好

var turnToArr = function(content){
let arr = [];
  let num = 0;
  let start = 0;
  let end = 0;
  for (let i = 0; i < content.length; i++) {
    if (content[i] === "。") {
      num++;
    }
    if (num % 3 === 0 && num !== 0) {
      end = i + 1;
      // i + 1 可以包括到后面的句号
      arr.push(content.slice(start, end));
      start = end;
      num = 0;
    }
  }
  arr.push(content.slice(start, content.length).concat("。"));
  function test(func) {
  var start = new Date().getTime(); //起始时间
  func(); //执行待测函数
  var end = new Date().getTime(); //接受时间
  return end - start + "ms"; //返回函数执行需要时间
}
console.log(test(turnToArr));// 查看运行时间
};

第二种方法:

var turnToArr = function(content){
let arr = content.split("。");
  let newArr = [];
  let num = 0;
  for (let i = 0; i < arr.length; i++) {
    if (i % 3 === 0) {
      newArr.push(
        arr
          .slice(i, i + 3)
          .join("。")
          .concat("。")
      );
    }
  }
};
function test(func) {
  var start = new Date().getTime(); //起始时间
  func(); //执行待测函数
  var end = new Date().getTime(); //接受时间
  return end - start + "ms"; //返回函数执行需要时间
}
console.log(test(turnToArr));// 查看运行时间
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值