如何将阵列保存到会话存储?



我已经阅读了一些类似的线程,但解决方案对我不起作用。我正在处理的页面具有图像库的过滤器。每次我单击过滤器时,都会根据该过滤器通过 JSON 文件重新加载图像。

如果我想应用多个过滤器,我需要在重新加载之前选择的过滤器保存在数组变量中。

这是我为此编写的代码

let filterArray = []
sessionStorage.setItem('filterArray', JSON.stringify(filterArray))
let savedArr = JSON.parse(sessionStorage.getItem('filterArray'))

现在我没有设置页面重新加载,但是在单击过滤器并刷新页面后,我希望能够记录"savedArr"变量,但是当我这样做时,我得到这个:

未捕获的引用错误: 未定义已保存的 Arr 在 :1:13

刷新页面后无法登录savedArr,需要重新定义它。

会话存储中的数据将保留,但变量声明不会保留。

重新加载页面后,再次调用声明行,您将可以访问数据。

let savedArr = JSON.parse(sessionStorage.getItem('filterArray'))

最新更新