首页 > 解决方案 > 使用 JSON.parse(localStorage.getItem('list')) 时,LocalStorage getItem 抛出错误“位置 1 的 JSON 中的意外令牌 o”

问题描述

我有两个 js 文件。在一个文件中,我正在创建一组对象并将它们存储在本地存储中。在另一个文件中,我highscores_listlocalStorage.

我在这一行收到一条错误消息:

VM2055:1 未捕获的语法错误:JSON 中位置 1 的意外标记 o'

文件 1

var highscores_list = [
    {name:'sham' , score: 10},
    {name:'John' , score: 9}
];

localStorage.setItem('highscores_list',JSON.stringify(highscores_list));

文件 2

var getListItems = JSON.parse(localStorage.getItem('highscores_list')); 

标签: javascriptdomlocal-storage

解决方案


您必须对存储在本地存储中的对象使用 stringify 两次。

var highscores_list = [
    {name:'sham' , score: 10},
    {name:'John' , score: 9}
];

highscores_list = JSON.stringify(highscores_list);

localStorage.setItem('highscores_list',JSON.stringify(highscores_list));

推荐阅读