Creé una tabla de clasificación que muestra las puntuaciones de los usuarios del almacenamiento local. Pero no está en el orden de las puntuaciones (de mayor a menor). Además, quiero que solo se muestren hasta 10 usuarios a la vez en la tabla de clasificación. Pensé en usar un ciclo for para detenerlo en 10, pero eso solo imprimió a cada usuario 10 veces.
índice.html
<table border="2" id="Ranking" class="ldr"></table> <script> loadRankingTable(); window.onload = () => { if (sessionStorage.loggedInUser !== undefined) { let oldData = localStorage.getItem(sessionStorage.loggedInUser); if (oldData) { oldData = JSON.parse(oldData); oldData.topScore = highscore; localStorage.setItem(sessionStorage.loggedInUser, JSON.stringify(oldData)); } document.getElementById("Greeting").innerHTML = sessionStorage.loggedInUser; } } </script>prac.js
function loadRankingTable(){ let str = "<table><tr><th>Rank</th><th>Name</th><th>Score</th></tr>"; for(let key of Object.keys(localStorage)){ let usr = JSON.parse(localStorage[key]); if (key !== "highscore"){ str += "<tr><td>" + "1" + "</td><td>" + usr.username + "</td><td>" + usr.topScore + "</td></tr>"; } } str += "</table>"; document.getElementById("Ranking").innerHTML = str; }