Por alguna razón, localStorage no ordena por el orden en que le agregas datos.

He almacenado milisegundos de fecha JS como claves en localStorage.
¿Cómo puedo generar la clave y el valor de localStorage ordenados por clave asc?

¿Necesito crear otro VAR desde localStorage y luego ordenar el VAR?

-1
Björn C 4 mar. 2021 a las 12:36

1 respuesta

La mejor respuesta

¿Qué tal guardar los tiempos como un solo objeto usando JSON.stringify (yourObject)

Algo así como

const jsTimes = localStorage.getItem("times");
const times = jsTimes ? JSON.parse(jsTimes) : {};
...
times[new Date().getTime()] = "Now is the time";
localStorage.setItem("times",JSON.stringify(times));

Alternativamente, si debe

const times = Object.keys(localStorage)
  .filter(key => key.length === 13 && !isNaN(new Date(key))
  .map(key => key)
  .sort() // alphabetic sort is ok on a timestamp
  .map(key => ({[key]: localStorage[key] }));
1
mplungjan 4 mar. 2021 a las 09:53