Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript localStorage返回NULL_Javascript_Json_Local Storage - Fatal编程技术网

Javascript localStorage返回NULL

Javascript localStorage返回NULL,javascript,json,local-storage,Javascript,Json,Local Storage,我遇到了一个有关本地存储的问题。我的代码如下所示: var defaultReportData = { 'station': 'DR P3', 'days': 'Mon, Tue, Wed, Thur, Fri', 'startHour': '06:00', 'endHour': '18:00', 'demography': 'Cover: All' } localStorage.setItem('defaultReportData', JSON.stringify(def

我遇到了一个有关本地存储的问题。我的代码如下所示:

var defaultReportData = {
  'station': 'DR P3',
  'days': 'Mon, Tue, Wed, Thur, Fri',
  'startHour': '06:00',
  'endHour': '18:00',
  'demography': 'Cover: All'
}

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

// Returns null
console.log(localStorage.getItem('station'));
加载页面后,只要在控制台中键入“localStorage”,对象就会正确地获得输出。但是,当我想要获取特定值时,本地存储输出在我的控制台中返回null


我做错了什么

您必须使用存储时使用的相同的
(defaultReportData)从本地存储中检索数据,然后将字符串数据解析为JSON对象

var data=JSON.parse(localStorage.getItem('defaultReportData'));
console.log(data.station);

您必须将返回的字符串解析为JSON,以获得
站点
,如:

var defaultReportData = JSON.parse(localStorage.getItem('defaultReportData'));
console.log( defaultReportData.station );
它可以工作,只需复制并粘贴到您的控制台

var defaultReportData={
‘车站’:‘P3博士’,
“天”:“周一、周二、周三、周四、周五”,
“startHour”:“06:00”,
“结束时间”:“18:00”,
“人口统计”:“封面:全部”
}
setItem('defaultReportData',JSON.stringify(defaultReportData));
//返回空值
var itemPref=window.localStorage.getItem('defaultReportData')
var resultObject=JSON.parse(itemPref);

控制台日志(resultObject.station)
console.log(JSON.parse(localStorage.getItem('defaultReportData')).station);您正在使用与设置不同的存储名称进行检索。我认为更好的解释是使用存储时使用的相同密钥