大家好,我很难在更新我存储在sessionstorage中的值的过程中。我尝试了几种方法来定位嵌套对象的值,但运气不好。任何帮助将不胜感激。

我正在JavaScript中创建的对象

   var projectInfo = {
        project1: {
            name: 'Unique name',
            extraCredit: true
        }
        project2: {
            name: 'Unique name',
            extraCredit: true
        }
    }

我如何坚持参加
sessionStorage.setItem('projectInfo', JSON.stringify(projectInfo));

如何在项目信息中定位嵌套的项目名称。例如
sessionStorage.setItem(projectInfo.project1.name, 'Student Fund raiser')

最佳答案

你不能那样做。您必须检索整个对象,对其进行解析,更改所需的内容,然后将其放回存储中:

var projectInfo = JSON.parse(sessionStorage.getItem('projectInfo'));
projectInfo.project1.name = 'Student Fund raiser';
sessionStorage.setItem('projectInfo', JSON.stringify(projectInfo));

注意:如果还没有存储对象,您还可以检查sessionStorage.getItem是否返回某些内容。

09-11 18:26