Wie kann die Speicherung von Daten auf den lokalen Speicher beschränkt und abgerufen werden?

Hallo, ich muss das Hinzufügen von Daten zu meinem lokalen Speicher einschränken. Es müssen nur 5 Artikel gespeichert werden, wenn der Benutzer den 6. Artikel hinzufügt und der erste Artikel entfernt werden soll. Ich habe diesen Teil fertiggestellt, aber beim Abrufen werden die entfernten Daten abgerufen und das vierte Element übersprungen. Irgendwelche Ideen?

Wie ich die Dinge einstelle

<code> var _i = 0 //global;
 storage.setItem(_i, URL);
</code>

checkLimit

<code>if(storage.length >= 5)
{
   var _a = storage.getItem(0);
   storage.removeItem( _a );
   _a += 1;
}
</code>

Beim Abrufen

<code>for( var _x = 1; _x <= storage.length - 1; _x++)
{
  var _url = storage.getItem(_x);
}
</code>
aktualisieren

Oh, ich habe vergessen zu erwähnen, dass, wenn ich den Schlüsselindex verwende, um das Objekt zu erhalten, die entfernten Daten nicht angezeigt werden, aber irgendwie die vierte übersprungen wird.

Update 2

Jetzt wird der vierte Datensatz nicht übersprungen, aber die entfernten Daten und die zuletzt hinzugefügten Daten werden nicht angezeigt. z.B

<code>the //first
avengers //second
are //third
coming //fourth
now //fifth
excited //sixth
</code>

Da ich es ausdrücklich auf fünf beschränke (5)the sollte aus der Liste entfernt werden undexcited sollte hinzugefügt werden. Es funktioniert gut, aber wenn ich die Anwendung schließe und versuche, die zurückgegebenen Daten abzurufen

<code>the
avengers
are
coming
now
</code>

und es zeigt nichtexcited Mache ich sinn

Antworten auf die Frage(1)

Ihre Antwort auf die Frage