将元素推送到会话存储中存储的现有阵列

时间:2018-09-19 15:30:25

标签: reactjs ecmascript-6 react-props

因此,我正在尝试将存储在会话存储中的元素推送到也存储在会话存储中的对象数组中。

这是我尝试过的方法,但是它给了我这个错误(sessionStorage.getItem(...)。push不是函数)

sessionStorage.getItem(“ items”)。push(sessionStorage.getItem(“ method”))

1 个答案:

答案 0 :(得分:0)

您只能将字符串存储在会话存储中。如果要将数组保存到会话存储中,则必须使用JSON.stringify()对其进行序列化,然后在从会话存储中读取时使用JSON.parse()。另外,在修改数组之后,您必须再次保存它。

sessionStorage.setItem('items', JSON.stringify([1, 2, 3]));

const items = JSON.parse(sessionStorage.getItem('items'));
items.push({ method: sessionStorage.getItem('method') });
sessionStorage.setItem('items', JSON.stringify(items));

请参见demo