0

次のようなローカルストレージがあります

Key0 はキーで、その値は{"fav1,fav2,fav3,fav4,fav5"} です

localstorage.removeitem('key0') を使用すると、値全体が完全に削除されます

removeitem関数を使用してfav1またはfav2などを具体的に削除するにはどうすればよいですか、またはローカルストレージの特定の部分を削除する簡単な方法はありますか

4

1 に答える 1

0

特定のキーの下に保存する値は単なる文字列であるため、これを行う簡単な方法はありません。"fav1,fav2,fav3,fav4,fav5"そのため、キーの下に保存するkey0と、この値は他のものと同じように単なる文字列になります (例: foobar)。localStorage に格納されている文字列を変更する場合は、1) localStorage から読み取り、2) 手動で変更し、3) 同じキーで localStorage に格納し直す必要があります。

これは通常、JSON シリアライゼーションとデシリアライゼーションを使用して行われます。

key = "key0";
value = JSON.stringify(["fav1", "fav2", "fav3", "fav4", "fav5"]);
// value is now the JSON string representing the array
localStorage.setItem(key, value);

newValue = JSON.parse(localstorage.getItem(key))
// newValue is now an array with the values fav1, fav2, ... so we can manipulate it and store it back
newValue.pop();
newValue = JSON.stringify(newValue);
localStorage.setItem(key, newValue);
于 2012-09-23T11:32:19.110 に答える