一个问题。再次。这是代码:
if(localStorage.getItem("temporaryArray")){
var temporaryArray = JSON.parse(localStorage.getItem("temporaryArray"));
}else{
var temporaryArray = [];
}
因此,基本上它的作用是,当加载新页面时,我不想重置该数组,因为稍后在代码中,我会在localStorage中为该数组分配一些内容。因此,我想说的是,如果您可以获取此项目,则在再次加载代码时,将此变量分配给localStorage项目。否则,只需将其设置为空数组即可。但是这是我得到的错误,因为该数组当前为空(我认为这就是原因):
Uncaught SyntaxError: Unexpected token o in JSON at position 1
at JSON.parse (<anonymous>)
at main.js:61
任何帮助将不胜感激。
最佳答案
如果方法调用失败,通常有助于查看该函数的输入是什么。我建议在console.log(localStorage.getItem("temporaryArray"))
调用之前先执行JSON.parse()
,以查看问题所在。
我想问题的根源是,在某个时候您正在调用localStorage.setItem("temporaryArray",value)
并忘记对值执行JSON.stringify()。