To jest szybkie pytanie, ale nigdzie nie mogłem znaleźć odpowiedzi. Wiem, aby zapisywać rzeczy w localStorage, które piszesz w ten sposób:

localStorage.name = JSON.stringify("this has now been saved under name);

Ale chcę mieć możliwość zmiany tego, co jest zapisywane, w zależności od zmiennej, na przykład:

const banana = potato
localStorage.banana = JSON.stringify("this has now been saved under potato");

Czy to się da zrobić? :)

-2
Christofer Carlsson 2 kwiecień 2020, 14:25

3 odpowiedzi

Najlepsza odpowiedź

Localstorage pozwala na przechowywanie par klucza i wartości, w których wartość jest ciągiem.

Jeśli przypisujesz do localstorage z odniesienia do innej zmiennej, jeśli jest to ciąg znaków, to zadziała:

const potato = "potato";
const banana = potato;
localStorage.setItem(banana, "this has now been saved under potato");

W przeciwnym razie musisz najpierw określić wartość zmiennej.

https://www.w3schools.com/html/html5_webstorage.asp

1
Alex 2 kwiecień 2020, 11:36

Możesz ustawić zmienne w localStorage za pomocą kluczy dynamicznych, takich jak

const banana = potato
localStorage.setItem(banana, "this has now been saved under potato")
1
Shubham Khatri 2 kwiecień 2020, 11:28

Możesz dodać dane do lokalnego magazynu. Masz klucz i wartość, oba muszą być łańcuchami.

window.localStorage.setItem('myCat', 'Tom');

I możesz to uzyskać w ten sposób:

window.localStorage.getItem("myCat");

Aby zapisać zmienną, tablicę, obiekt itp., Musisz najpierw przekonwertować ją na ciąg, na przykład:

let arr = [1, 2, 3];
//you need to convert this array to an string.
let arr_string = JSON.stringify(arr);

//now you can store it in your local storage

window.localStorage.setItem("myArray", arr_string);

//to get the array you will need to parse it back from string to array.

let arr_string = window.localStorage.getItem("myArray");
let arr = JSON.parse(arr_string);

console.log(arr); // output: [1, 2, 3]
1
Ifaruki 2 kwiecień 2020, 11:37