Mi chiedevo come posso ordinare un array su un ordine personalizzato, non in ordine alfabetico. Immagina di avere questo array/oggetto:Ordinamento su un ordine personalizzato
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"
}];
Qui abbiamo 3 diversi tipi: frutta, verdura e caramelle. Ora voglio ordinare questo array e assicurarmi che tutti i frutti siano i primi, le caramelle vengano dopo i frutti e le verdure siano le ultime. Ogni tipo richiede che i loro articoli siano ordinati in ordine alfabetico. Useremo una funzione come sortArrayOnOrder (["fruit","candy","vegetable"], "name");
Quindi, fondamentalmente, si finirebbe con questo array dopo l'ordinamento:
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"
}];
Chiunque un'idea di come creare uno script per questo?
Vedere anche molti altri "[come ordinare] (http://www.google.de/search?q=stackoverflow+javascript+sort+array+ di + oggetti) "domande – Bergi