アルファベット順ではなく、カスタムオーダーで配列をソートする方法を知りたいと思っていました。この配列/オブジェクトがあると想像してください:
var somethingToSort = [{
type: "fruit",
name: "banana"
}, {
type: "candy",
name: "twix"
}, {
type: "vegetable",
name: "broccoli"
}, {
type: "vegetable",
name: "carrot"
}, {
type: "fruit",
name: "strawberry"
}, {
type: "candy",
name: "kitkat"
}, {
type: "fruit",
name: "apple"
}];
フルーツ、ベジタブル、キャンディーの3種類が入っています。ここで、この配列を並べ替えて、すべての果物が最初に、キャンディーが果物の後に来て、野菜が最後になるようにします。各タイプは、アイテムをアルファベット順にソートする必要があります。基本的sortArrayOnOrder ( ["fruit","candy","vegetable"], "name" );
に、並べ替え後にこの配列になります。
var somethingToSort = [{
type: "fruit",
name: "apple"
}, {
type: "fruit",
name: "banana"
}, {
type: "fruit",
name: "strawberry"
}, {
type: "candy",
name: "kitkat"
}, {
type: "candy",
name: "twix"
}, {
type: "vegetable",
name: "broccoli"
}, {
type: "vegetable",
name: "carrot"
}];
このためのスクリプトを作成する方法を知っている人はいますか?