【问题标题】:how to retrieve data from local storage?如何从本地存储中检索数据?
【发布时间】:2017-02-14 18:24:26
【问题描述】:

我使用 javascript 创建了一个注册表单,数据从中存储在本地存储中,但我想从本地存储中检索数据以用于登录,以下是我的 controller.js-

//Storing data from local storage into an array of objects
 var usersdata = JSON.parse( localStorage.getItem('key_users' ) );
function validatelogin()
{
    usersdata = JSON.parse( localStorage.getItem('key_users' ) );
    var usernameinput   = document.getElementById("username");
    var passwordinput   = document.getElementById("password");
    for(var p in userdata)
    {
      console.log(p+':'+userdata[p].username+'|'+userdata[p].email);
      if(usernameinput==userdata[p].username && passwordinput==userdata[p].password)
      {
         alert("Logged in successfully");
      }
    }
}

在尝试登录时,未定义名为“userdata”的错误。请帮忙看看代码有什么问题?

【问题讨论】:

  • 你已经知道了localStorage.getItem
  • 你的代码usersdata != userdata中存在变量名差异

标签: javascript local-storage


【解决方案1】:

您可以使用轻松检索数据

var myData = localStorage.getItem('myDataStorage');

但在你这样做之前,你应该先设置本地存储

localStorage.setItem('myDataStorage', JSON.stringify(myData));

然后您使用 getItem 从同一个本地存储中检索,然后指定创建的 localStorage 项目的名称。

【讨论】:

  • 在检索的时候需要使用JSON.parse() JSON.parse((localStorage.getItem('myDataStorage')))
【解决方案2】:

for 循环内将userdata 更改为usersdata

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-10-29
    • 1970-01-01
    • 2016-04-02
    • 1970-01-01
    • 2018-04-26
    • 2017-05-12
    • 2019-11-26
    • 2019-10-27
    相关资源
    最近更新 更多