本地存储
本地存储分为cookie,以及H5新增的 localStorage 和 sessionStorage ;
本地储存分三种,有什么区别?
1、cookie 存储在本地,容量最大4k,在同源的http请求时携带传递,损耗带宽,可设置访问路径,只有此路径及此路径的子路径才能访问此cookie,在设置的过期时间之前有效。
2、localStorage 存储在本地,容量为5M或者更大,不会在请求时候携带传递,在所有同源窗口中共享,数据一直有效,除非人为删除,可作为长期数据。
3、sessionStorage 存储在本地,容量为5M或者更大,不会在请求时候携带传递,在同源的当前窗口关闭前有效。
localStorage 和 sessionStorage 合称为Web Storage , Web Storage支持事件通知机制,可以将数据更新的通知监听者,Web Storage的api接口使用更方便。
iPhone的无痕浏览不支持Web Storage,只能用cookie。
jqueryUI
jQuery UI是以 jQuery 为基础的代码库。包含底层用户交互、动画、特效和可更换主题的可视控件。我们可以直接用它来构建具有很好交互性的web应用程序。
1、什么是正则表达式:
能让计算机读懂的字符串匹配规则。
2、正则表达式的写法:
var re=new RegExp('规则', '可选参数');
var re=/规则/参数;
3、规则中的字符
1)普通字符匹配:
如:/a/ 匹配字符 ‘a’,/a,b/ 匹配字符 ‘a,b’
2)转义字符匹配:
\d 匹配一个数字,即0-9
\D 匹配一个非数字,即除了0-9
\w 匹配一个单词字符(字母、数字、下划线)
\W 匹配任何非单词字符。等价于[^A-Za-z0-9_]
\s 匹配一个空白符
\S 匹配一个非空白符
\b 匹配单词边界
\B 匹配非单词边界
. 匹配一个任意字符,除了换行符‘\n’和回车符‘\r’
\1 重复子项
4、量词:对左边的匹配字符定义个数
? 出现零次或一次(最多出现一次)
- 出现一次或多次(至少出现一次)
- 出现零次或多次(任意次)
{n} 出现n次
{n,m} 出现n到m次
{n,} 至少出现n次
5、任意一个或者范围
[abc123] : 匹配‘abc123’中的任意一个字符
[a-z0-9] : 匹配a到z或者0到9中的任意一个字符
6、限制开头结尾
^ 以紧挨的元素开头
$ 以紧挨的元素结尾
7、修饰参数:
g: global,全文搜索,默认搜索到第一个结果接停止
i: ingore case,忽略大小写,默认大小写敏感
m: multiple lines,多行搜索(更改^ 和$的含义,使它们分别在任意一行对待行首和行尾匹配,而不仅仅在整个字符串的开头和结尾匹配)
8、常用函数
1、test
用法:正则.test(字符串) 匹配成功,就返回真,否则就返回假
2、search
用法:字符串.search(正则) 匹配成功,返回位置,否则返回-1
3、match
用法: 字符串.match(正则);匹配成功,就返回匹配成功的数组,否则就返回null
4、replace
用法:字符串.replace(正则,新的字符串) 匹配成功的字符去替换新的字符
正则默认规则
匹配成功就结束,不会继续匹配,区分大小写
~~~
<form action="../075.target.html" method="post" class="form">
<div class="form-group in1">
<label for="username">注册账户:</label>
<span class="error_tip">提示信息</span>
<input name="username " class="form-control in3" id="username" placeholder="邮箱/小米ID/手机号码">
</div>
<div class="form-group in2">
<label for="password1">密码:</label>
<span class="error_tip">提示信息</span>
<input name="password1" type="password" class="form-control in4" id="password1" placeholder="密码">
</div>
<div class="dengluanniu"><button type="submit" id="rr" >登录</button></div>
</form>
function check_username(){
var val = ('#username').val(); var re = /^\w{5,15}/;
if(val == ''){
$('#username').prev().html('用户名不能为空!');
$('#username').prev().show();
error_name = true;
return;
}
if(re.test(val)){//匹配上了就是正确的
error_name = false;
}else{
$('#username').prev().html('用户名是包含数字、字母、下划线的5-15位字符');
$('#username').prev().show();
error_name = true;
return;
}
}
function check_pwd(){
var val = $('#password1').val();
var re = /^[a-zA-Z0-9\#\&\$]{6,16}$/;//[]表示范围,匹配数字字母特殊符号,6-16位
if(val == ''){
$('#password1').prev().html('密码不能为空!');
$('#password1').prev().show();
error_pwd = true;
return;
}
if(re.test(val)){//匹配上了就是正确的
error_pwd = false;
}else{
$('#password1').prev().html('密码是包含数字、字母、#&$的6-16位字符');
$('#password1').prev().show();
error_pwd = true;
return;
}
}
$('.form').submit(function() {
//防止用户上来就直接点提交,上面验证都未执行,所以先执行一次
check_username();
check_pwd();
// check_cpwd();
// check_email();
if(error_name || error_pwd ){
return false;//不能提交
}
});
})
~~~
网友评论