当前位置: 首页 > article >正文

js相同字符串截取拼接

原数据
const list = [
	'999-1234567801',
    '999-1234567802',
	'999-1234567803',
];
const list1 = [
	'999-1234567899',
    '999-1234567900',
	'999-1234567901',
];
期望数据
'999-1234567801/2/3' //list
'999-1234567899/900/901' //list1
处理代码
// 连续号码处理
export const formatNumber = (ticketNo: string[]): string => {
  let point = 0;
  let isTheSame = true;
  const baseStr = ticketNo[0] || '';
  for (let i = 0; i < baseStr.length; i++) {
    const str = baseStr[point];
    isTheSame = !ticketNo.some((t) => t[point] !== str);
    if (isTheSame) {
      point++;
    } else {
      break;
    }
  }
  if (point === baseStr.length) {
    return baseStr;
  } else {
    let msg = '';
    ticketNo.map((t, index) => {
      if (index === 0) {
        msg = t;
      } else {
        msg = msg + `/${t?.substring(point, t?.length)}`;
      }
    });
    return msg;
  }
};

在这里插入图片描述
在这里插入图片描述


http://www.kler.cn/news/149189.html

相关文章:

  • 牛客剑指offer刷题位运算篇
  • 八股文-如何理解Java中的多态
  • 管理后台系统,springboot+redis+nginx+html+bootstrap
  • UE5 中的computer shader使用
  • C++ 背包理论基础01 + 滚动数组
  • 【MySql】14- 实践篇(十二)-grant权限/分区表/自增Id用完怎么办
  • HassOS使用nmcli设置静态IPv4地址及网关、DNS
  • 对支付宝进行测试用例分析
  • .sketch的文件转.psd文件
  • Linux僵死进程及文件操作
  • 【ARM CoreLink 系列 8 -- SMMU 详细介绍-上半部】
  • 《微信小程序开发从入门到实战》学习三十六
  • springboot实战之stream API应用过滤不符合条件的数据
  • MySQL巧用公用表表达式(CTE)处理递归查询
  • 想学计算机视觉入门的可以看过来了
  • 牛客算法题 HJ100 等差数列 golang语言实现
  • QT配合CSS隐藏按钮
  • Springboot_文件下载功能(前端后端)
  • Kotlin学习——kt入门合集博客 kt里的委派模式Delegation kt里的特性
  • 基于C#实现Dijkstra算法
  • Java架构师软件架构开发
  • ⑨【Stream】Redis流是什么?怎么用?: Stream [使用手册]
  • 金字塔原理 读书笔记
  • 正则表达式及文本三剑客grep,awk,sed
  • 三、Lua变量
  • 学生护眼灯怎么选?2023备考护眼台灯推荐
  • CentOS 系统给nodejs 项目安装依赖报错 make: g++: No such file or directory
  • c语言-希尔排序
  • 力扣labuladong一刷day21天滑动哈希算法共2题
  • sqli-labs靶场详解(less29-less31)