You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在JS中基于末尾ID子串对字符串数组进行排序

实现方案

你可以直接用JavaScript原生的sort()方法处理,核心逻辑是提前提取每个字符串末尾的ID转成数字后再比较大小,示例代码如下:

let arr = ["UserA | 3", "UserB | 0", "UserC | 2", "UserD | 1"]

// 按ID升序排序
arr.sort((prev, next) => {
  const prevId = Number(prev.split(' | ')[1])
  const nextId = Number(next.split(' | ')[1])
  return prevId - nextId
})

console.log(arr)
// 输出:["UserB | 0", "UserD | 1", "UserC | 2", "UserA | 3"]

注意事项

  • 如果实际场景中|分隔符两侧的空格不固定,可以把split的参数替换为正则/\s*\|\s*/,自动适配多空格、无空格的场景
  • 如果需要按ID降序排列,只需要把return的语句改成nextId - prevId即可
  • 若存在ID异常(非数字、无ID)的情况,可以自行补充判断逻辑给异常值设置默认排序优先级

内容的提问来源于stack exchange,提问作者Apollo24

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 17:15:03