商品を保管するために、sessionstorageを使用しているショッピングカートがあります。ユーザーが「カートに追加」をクリックすると、クリック数に等しいキーとアイテム名に等しい値を持つ新しいオブジェクトが保存されます。私はループの値を読み取るためにこれを使用します:このsessionstorageの命名システム/ forループを改善する方法は?
for (var i = 0; i < sessionStorage.length -1; i++) {
if(sessionStorage.getItem(i + 1) != null) {
...
"<span class='item'>" + sessionStorage.getItem(i + 1) + "</span>" +
ここに問題があります。私はカートから5の3の項目を削除します。別のアイテムを追加すると「6」と呼ばれますが、アイテムは1,2,4,5,6になります。forループはアイテム1,2,4および5のみを認識します。アイテム6を認識するにはどうすればいいですか?私はforループチェックを50にすることですばやく修正しましたが、これはちょっとばかげてリソースの枯渇のように思えます...
これはあなたにとって役に立ちます:http://stackoverflow.com/questions/3357553/how-to-store-an-array-in-localstorage –
@EvanTrimboliありがとう、これは便利ですが、残念ながらJSONを使ってメソッドに変換するのはしばらく時間がなくなりました。たぶん次回はそういう解決策をやるつもりです。 –