カスタマイズされた方法で配列をソートしたいと思います。
例は学生のクラスレベルです:
_.sortBy(["Junior","Senior","Freshman","Sophomore"], function(classlevel){
// ??
})
理想的には、並べ替えは次を返す必要があります。
["Freshman","Sophomore","Junior","Senior"]
次のように、クラスレベルを事前にランク付けできるかどうかを考えています。
var classlevelRanked = [{ class: "Junior",
rank: 3
},{ class: "Senior",
rank: 4
},{ class: "Freshman",
rank: 1
},{ class: "Sophomore",
rank: 2
}]
次に、次の方法で並べ替えを適用します。
_.sortBy(classlevelRanked, function(classlevel){
return classlevel.rank;
})
しかし、次のようにしてランクを取り除く必要があります。
.map(function(classlevel){
return classlevel["class"];
})
クラスレベルを事前にランク付けしてから後で削除することなく、これを行うより直接的な方法はありますか?
ありがとうございました。