一尘不染

JavaScript排序功能。按第一,然后第二

javascript

我有一个要排序的对象数组,每个对象都有两个参数:强度和名称

objects = []
object[0] = {strength: 3, name: "Leo"}
object[1] = {strength: 3, name: "Mike"}

我想先按强度排序,然后再按字母顺序排序。我正在使用以下代码对第一个参数进行排序。然后如何排序?

function sortF(ob1,ob2) {
  if (ob1.strength > ob2.strength) {return 1}
  else if (ob1.strength < ob2.strength){return -1}
  return 0;
};

谢谢你的帮助。


阅读 394

收藏
2020-05-01

共1个答案

一尘不染

这样扩展您的排序功能;

function sortF(ob1,ob2) {
    if (ob1.strength > ob2.strength) {
        return 1;
    } else if (ob1.strength < ob2.strength) { 
        return -1;
    }

    // Else go to the 2nd item
    if (ob1.name < ob2.name) { 
        return -1;
    } else if (ob1.name > ob2.name) {
        return 1
    } else { // nothing to split them
        return 0;
    }
}

一个<>比较对字符串 字母比较。

2020-05-01