So verschieben Sie Daten in ein Array auf localStorage – Stapelüberlauf
伊谢尔伦
伊谢尔伦 2017-06-20 10:07:01
0
5
1250

Eine Funktion, die ich ausführen möchte, besteht darin, jedes Mal, wenn ich klicke, die aktuell angeklickten Daten in das Localstorage-Array zu übertragen. Ich habe jedoch nicht versucht, das Localstorage-Array tief zu kopieren Im kopierten Array habe ich das lokale Speicherarray als tiefes Kopierarray festgelegt, aber ich habe es noch nicht ausprobiert. Könnten Sie mir bitte einen Rat geben?

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

Antworte allen(5)
世界只因有你

localStorage只能存储String,要用Json对象转化下:

var arrayObject = [];
arrayObject.push('a','b','c');
localStorage.setItem("array",JSON.stringify(arrayObject));
var arrayObjectLocal = JSON.parse(localStorage.getItem("array"));
arrayObjectLocal.push('d','e','f');
for (i = 0; i < arrayObjectLocal.length; i++) { 
    console.log(arrayObjectLocal[i]);
}
学习ing

很简单,存进去之前先json字符串化,取出来逆回来操作,就能得到正常的数组。

localStorage.setItem("arr", JSON.stringify(arr))
var arr = JSON.parse(localStorage.getItem("arr"))
arr.push(something)
localStorage.setItem("arr", JSON.stringify(arr))
我想大声告诉你

很奇怪的思维,为啥不往数组里push,在localStorage.setItem("arr",arr)呢,而是在先设置localStorage,在进行操作呢

ringa_lee

数组存localstorage里会变成字符串,
想操作localStorage的变量就先取出来进行操作再存进去。

//设置
arr = [1];
localStorage.arr = arr

取出来再设置

//取出
getarr = localStorage.arr.split(',')
//操作
getarr.push(2)//["1", 2]
//再存
localStorage.arr = getarr//这时候localStorage.arr变为 "1,2"
曾经蜡笔没有小新

亲,首先你要搞清楚localstorage到底是个什么东西,
localstorage作为HTML5新特性中的webStorage技术中的永久存储方法,我们通常也叫他本地存储和跨会话级存储。
他的用法并不需要给localstorage设置空数组,他本身有自己的存取数据的方法,如下:

localstorage["key"] = 'value' ;

希望可以帮到你啦~

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage