Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Как получить копию localStorage? (https://javascript.ru/forum/misc/73314-kak-poluchit-kopiyu-localstorage.html)

geekvar 05.04.2018 13:49

Как получить копию localStorage?
 
Собственно это и есть вопрос который сейчас меня интересует.
Собираюсь в юзерскрипте вызывать значения из массива localStorage, с последующим удалением этого значения. До тех пор пока длина массива не будет равна 0.
Проблема лишь в том что этот массив в localStorage, будет нужен мне и в дальнейшем, а действия выше удалят из него все значения.

рони 05.04.2018 13:52

geekvar,
:-?

j0hnik 05.04.2018 13:55

var copy = localStorage;

j0hnik 05.04.2018 13:57

geekvar,
только вот зачем вам что-то удалять если вам это еще нужно, просто циклом пройдитесь, сделайте свои черные дела.

sortarray 05.04.2018 14:05

Не знаю как правильно, но он перебирается как обычный объект

<html>
<head>
<meta charset = "utf-8" />
<style>
</style>
</head>

<body>

<script>


localStorage.setItem("foo", 1)
localStorage.setItem("bar", 1)
localStorage.setItem("baz", 1)

myCopy = {}

for(var i in localStorage){
   if(!localStorage.hasOwnProperty(i)) break
   myCopy[i] = localStorage[i]
}
console.log(myCopy)

</script>

</body>
</html>

sortarray 05.04.2018 14:07

Цитата:

Сообщение от j0hnik (Сообщение 482410)
var copy = localStorage;

Это не копия, ссылка на тот же объект.
Или именно это и нужно ТСу?

Malleys 05.04.2018 14:08

localStorage.setItem("foo", 1)
localStorage.setItem("bar", 1)
localStorage.setItem("baz", 1)
 
myCopy = JSON.parse(JSON.stringify(localStorage));

console.log(myCopy);

sortarray 05.04.2018 14:16

Malleys,
Это тоже не копия, оно уничтожит информацию о типах

Nexus 05.04.2018 14:18

sortarray, разве в localStorage пишется что-то кроме строк?

j0hnik 05.04.2018 14:18

Цитата:

Сообщение от sortarray (Сообщение 482418)
Это не копия, ссылка на тот же объект.

Все верно, ссылка


Часовой пояс GMT +3, время: 17:54.