JS Tábla sorbarendezés

JS Tábla sorbarendezés
2013-09-21T16:24:02+02:00
2013-09-21T17:51:40+02:00
2022-11-29T18:30:39+01:00
jahatpersze
Egy ~800 sorú táblát szeretnék javascript-tel sorba rendezni egy-egy mező szerint, de mivel más módot egyelőre nem találtam rá csak a sorok szövegét cserélgetem, így viszont 30mp a rendezés.

Szerintetek hogyan tudnám hatékonyabbá tenni a szkriptet?


function sortBy() { var n = document.getElementById("myTable").children[0].children.length; var arr = document.getElementById("myTable").children[0].children; for(var i = 1; i < n; ++i) { var a = arr[i].children[0].innerHTML; for(var j = 1; j < i - 1; ++j) { if (j == i) continue; var b = arr[j].children[0].innerHTML; if (a < b) { var tmp = arr[j].innerHTML; arr[j].innerHTML = arr[i].innerHTML; arr[i].innerHTML = tmp; } } } }

A segítségeteket előre is köszönöm!
Mutasd a teljes hozzászólást!
szerintem vélhetőleg azért lassú, mert minden egyes cserénél "elrontod a DOM-ot", és a böngészőt ez feleslegesen leterheli,

én a helyedben azzal próbálkoznék, hogy nem közvetlenül a DOM-ban rendeznék, hanem a rendezendőeket "kigyűjteném" előre egy tömmbbe, azt rendezném, majd a végén "frissíteném" a DOM-ot, szerintem,


szerkesztve: "vagy" azt is csinálhatod, hogy nem közvetlen rendezést csinálsz, hanem csak az indexeket gyűjtöd ki egy tömbbe, azon keresztül rendezel, azaz csak az index tömbödet rendezed, és ha végeztél, akkor annak (az index tömbödnek) megfelelően "frissíted" a DOM-ot,
az "alapelvet" lásd: Indexvektoros rendezés (algoritmus) - Programozás Wiki
Mutasd a teljes hozzászólást!

Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd