W JavaScript muszę zamówić obiekty w tablicy według typu. Każdy typ ma wyższy priorytet, więc obiekt o typie "wytrzeć" powinien mieć najwyższy priorytet, dlatego powinien znajdować się z przodu tablicy (indeks = 0).Sortowanie obiektów zgodnie z określoną regułą
Jaki byłby najlepszy sposób sortowania tych obiektów? Czy istnieje funkcja wbudowana, która może to zrobić?
Dla np
function sortObjects(objs)
{
// objs is an unsorted array of objects
var animPriority = {"wipe": 1, "fly": 2, "iris": 3, "flip": 4, "cube": 5, "blur": 6, "zoom": 7, "fade": 8, "glow": 9, "rotate": 10};
for (var i=0; i<objs.length; i++)
if (objs[i].type == "wipe")
// bubblesort/bubbleswap element in objs[0] with objs[i]????
// a bubble sort doesn't seem efficient though?
}
Po prostu przekaż funkcję porównywania do natywnej funkcji '.sort'. –
Kto by pomyślał, że takie proste pytanie wywołałoby taką dyskusję i zbiór na wpół wypalonych odpowiedzi na start! :) – Paul