h5本地存储

有临时存值和永久存值,还有清空值;

  //临时存储

window.sessionStorage.setItem('nu',inp[3].value);   //存值 名称  对象的值或内容
window.
sessionStorage.getItem('nu');  //获取存到的值
window.
sessionStorage.clear();     //删除存到的值

//永久存储

window.localStorage.setItem('nu',inp[3].value);   名称  对象的值或内容

var a=window.localStorage.getItem('nu');  //获取存到的值
alert(a);

window.localStorage.clear();   

下面来看一个实例;多用户注册和登陆;

html代码

<body>
<input type="text" />
<input type="text" />
<input type="button" value="登录"/>
<input type="text"  placeholder="账号"/>
<input type="text" placeholder="手机号"/>
<input type="text" placeholder="密码"/>
<input type="button" value="注册" />
</body>

JS部分

var inp=document.querySelectorAll("input");
var a=window.localStorage; /*永久存储*/

//注册赋值
inp[6].onclick=function(){ 
/*window.localStorage.clear(); 清除本地存储*/
if(a.getItem("Account")){  /*账号 判断如果本地存储里面已经有了值*/
a.Account+="/"+inp[3].value;// 因为前面的一个值会覆盖下面的一个值,所以用字符串拼接起来
}else{
a.Account=inp[3].value;/*如果没有值就直接赋予值*/
}
if(a.getItem("Password")){ /*密码 判断如果本地存储里面已经有了值*/
a.Password+="/"+inp[4].value;// 因为前面的一个值会覆盖下面的一个值,所以用字符串拼接起来
}else{
a.Password=inp[4].value;/*如果没有值就直接赋予值*/
}
if(a.getItem("phone")){ /*手机 判断如果本地存储里面已经有了值*/
a.phone+="/"+inp[5].value;// 因为前面的一个值会覆盖下面的一个值,所以用字符串拼接起来
}else{
a.phone=inp[5].value;/*如果没有值就直接赋予值*/
}

}

//原生 
/*inp[3].onblur=function (){
if(a.getItem("Account")){ 账号  如果里面是否有值  则进行判断是否已被注册
var Acco=a.getItem("Account").split("/");
for(var i=0;i<Acco.length;i++){
if(inp[3].value==Acco[i]){
alert("改账号已被注册")
inp[3].value="";   清除内容
inp[3].focus(); 重新获取焦点
}
}
}
}
inp[4].onblur=function (){
if(a.getItem("phone")){
var Acco=a.getItem("phone").split("/");
for(var i=0;i<Acco.length;i++){
if(inp[4].value==Acco[i]){
alert("改账号已被注册")
inp[4].value=""; 
inp[4].focus();
}
}
}
}*/




//封装函数
function foo(type,n,title){ /*传参数*/
if(a.getItem(type)){
var Acco=a.getItem(type).split("/");
for(var i=0;i<Acco.length;i++){
if(inp[n].value==Acco[i]){
alert(title)
inp[n].value=""; 
inp[n].focus();
}
}
}
}

//账号
inp[3].onblur=function(){ /*接受参数*/
var ren=/^\S{2,5}$/;
if(!ren.test(inp[3].value)){
alert("账号格式不对")

}

foo("Account",3,"改账号已被注册"); /*赋值参数*/

}
//手机
inp[4].onblur=function(){ /*接受参数*/

var ret=/^1[3|4|5|8|9][0~9]\d{8}$/;
if(!ret.test(inp[4].value)){
alert("手机格式不对")
}

foo("phone",4,"改手机已被注册");/*赋值参数*/
}


//登录信息
inp[2].onclick=function(){ 
var Acco=a.getItem("Account").split("/");// 账号  获取本地存储里面的值 把字符串分割成数组,用于下面登陆和注册时的匹配
var Pass=a.getItem("Password").split("/");// 密码  获取本地存储里面的值 把字符串分割成数组,用于下面登陆和注册时的匹配
var bool=false
for(var i=0;i<Acco.length;i++){
if(inp[0].value==Acco[i]&&inp[1].value==Pass[i]){    //匹配是否已经注册  
bool=true
alert("登录成功")
break                //匹配到则跳出函数
}
}
if(!bool){
alert("密码或账号错误")
}
}
   

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值