在localStorage中存储快速响应并进行检索

时间:2017-01-05 01:28:11

标签: javascript

我正在创建一个记住您姓名的网站,并在您第二次重新加载页面时欢迎您回来。我将数据存储在localStorage中,因为它比cookie更好,永不过期,谢谢你的考虑!



var person = prompt("please enter your name","you are...");
var person1 = +localStorage.getItem("person1");

if(person1 == null){
  alert(person);
  localStorage.setItem("person1");
}
if(person1 != null){
 alert("welcome back " + person + "!"); 
}




1 个答案:

答案 0 :(得分:2)

对于其中一个,person始终会被提示,因为在提示之前您没有检查localStorage.getItem。其次,由于你没有给出第二个论点,你实际上并没有用localStorage.setItem设置任何东西。

您可能需要以下内容:

var username = localStorage.getItem("username");
if(!username){
    username = prompt("Please enter username");
    localStorage.setItem("username", username);
}

请注意,就像使用setItem一样,如果没有向函数调用提供参数,JavaScript将不会发出警告或出错。请务必检查您是否确实通过了必要的操作。

您还要注意并非所有浏览器都支持localStorage。您可能希望阅读一些问题,例如this one,以了解localStorage和Cookie之间的一些其他差异。其中一个重要的是localStorage是客户端,而cookie是服务器端。