Jak ograniczyć przechowywanie danych do lokalnej pamięci i odzyskać je?

Cześć Muszę ograniczyć dane dodawane do mojej lokalnej pamięci masowej. Potrzebuję tylko 5 przedmiotów do przechowywania, jeśli użytkownik doda szósty przedmiot, pierwszy przedmiot powinien zostać usunięty. Udało mi się wykonać tę część, ale po jej odzyskaniu pobiera ona usunięte dane i pomija czwarty element. Jakieś pomysły?

jak ustalam rzeczy

<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>

Podczas pobierania

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

oh zapomniałem wspomnieć, że kiedy używam indeksu klucza, aby pobrać element, nie wyświetla usuniętych danych, ale jakoś pomija czwarty.

aktualizacja 2

Teraz nie pomija czwartego rekordu, ale pokazuje usunięte dane i nie pokazuje ostatnio dodanych danych. na przykład

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

Ponieważ ograniczam ją do pięciu (5)the należy usunąć z listy iexcited należy dodać. robi to dobrze, ale kiedy zamykam aplikację i próbuję odzyskać dane, które zwraca

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

i to nie pokazujeexcited Czy mam sens?

questionAnswers(1)

yourAnswerToTheQuestion