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

JavaScript如何将服装尺码数组按实际尺寸规则排序

尺码按现实规则排序实现方案

实现思路

预设所有常规尺码的排序权重,数值越小代表排序越靠前,sort比较函数直接通过两个尺码的权重差值决定排序顺序,天然支持部分尺码缺失的场景,不需要额外做存在性判断。

完整代码实现

// 定义尺码权重映射
const sizePriority = {
  xs: 1,
  s: 2,
  m: 3,
  l: 4,
  xl: 5,
  xxl: 6
}

// 执行排序
const rawSizes = ["s", "m", "l", "xl", "xxl", "xs"]
const sortedSizes = rawSizes.sort((a, b) => sizePriority[a] - sizePriority[b])

效果验证

  • 完整尺码数组排序结果为 ["xs","s", "m", "l", "xl", "xxl"],符合预期要求
  • 缺失m码的数组 ["s", "l", "xl", "xxl", "xs"] 排序结果为 ["xs","s", "l", "xl", "xxl"],相对顺序保持正确

鲁棒性优化

如果接口可能返回未定义的异常尺码,可以添加兜底权重避免排序异常:

const sortedSizes = rawSizes.sort((a, b) => {
  // 异常尺码默认权重设为99,统一排在列表最后
  const weightA = sizePriority[a] ?? 99
  const weightB = sizePriority[b] ?? 99
  return weightA - weightB
})

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 13:15:04