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

如何对使用点符号访问属性的JavaScript数组按车辆评分降序排序

JavaScript数组按车辆评分降序排序实现方案

Array.sort()默认会将元素转为字符串,按Unicode编码顺序排序,因此直接调用该方法无法实现按数值类型的car_rating属性排序,你只需要传入自定义比较函数即可实现需求:

基础实现(修改原数组)

pool.sort((a, b) => {
  // 后项评分减前项评分,实现降序排列
  return b.car_rating - a.car_rating;
});

无侵入实现(不修改原数组)

如果需要保留原始pool数组的顺序,可以先浅拷贝数组再执行排序:

const sortedPool = [...pool].sort((a, b) => b.car_rating - a.car_rating);

异常兼容实现

如果存在部分数据缺失car_rating属性的情况,可以设置缺省评分,将无评分数据默认排在末尾:

pool.sort((a, b) => {
  const ratingA = a.car_rating ?? 0;
  const ratingB = b.car_rating ?? 0;
  return ratingB - ratingA;
});

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.09 10:39:03