一、正则-常用的限定符
*
匹配前面的子表达式零次或多次
+
匹配前面的子表达式一次或多次
?
匹配前面的子表达式零次或一次
例如:
正则意思为:以小写字母开头或以数字开头,以小写字母结尾或以数字结尾 出现0次或者1次 但是括号里不止1次或0次 所以false
{n}
匹配确定的 n 次
例如
至少匹配一次如果里面是空 就会是false
{n,}
至少匹配n 次
例如:
至少匹配一次只要>1满足条件的都是true
{n,m}
最少匹配 n 次且最多匹配 m 次
例如:
至少匹配1次最多匹配3次 5超出所以是false 2是符合要求的所以是true
二、String类中可以支持正则的方法
search =》
返回匹配字符串的下标,否则返回-1
index of 不可以使用正则 search可以使用正则
例如:
match=》
如果没有找到任何匹配的文本, 返回 null。否则,它将返回一个数组(依赖于是否具有全局标志 g)
例如:
replace=》
返回一个新的字符串
里可以写函数 里面写参数 第一个参数表示匹配的字符 第二个字符表示字符所在下标 函数中return出需要替换成的字符串
如果用replaceAll必须要加修饰符g
例如:
例如2:
去空格
split=》
返回一个字符串数组
第二个参数表示字符串分割长度
例如:
/^[\u4e00-\u9fa5]+$/
验证汉字
速记方式:有事100,有酒罚我
例如:
小知识:
1、字符串的trim方法只能去掉前后空格 里面的空格去不掉
2、使用isNaN有缺陷 isNaN(" ")里面是空格 也会和数字一样返回false
利用正则校验手机号
例如:
[ ] 里面表示一组 实际是一个数
第一位是1 第二位是34578 其余的0-9数字都可以 出现9次
方式: var reg = /^1[34578][0-9]{9}$/
邮箱校验
例如:
\代表转义符 把 . 转化为字符串的 .
并且使用()分组 就是.com或者.cn当成一组
后面使用+ 表示有可能有一组.com可能有多组
方式1:var reg = /^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/
方式2:var reg = /^[\w-]+@[\w-]+(\.[\w-]+)+$/
小练习:
使用正则给如下字符串中的数字加上中括号 var str='abc123efg'; 变成'abc[1][2][3]efg'
// 第一种 利用循环加上正则判断每一个字符
// 第二种 利用正则
三、Cookie
Cookie概念
Cookie 用于存储页面的用户信息
常见例子:自动登录、记住用户名或密码
Cookie特性
同一个网站中所有页面共享一套Cookie
域名和端口一致 就算路径不一样 也能共享一套cookie
数量、大小有限、过期时间
cookie和localstorage和sessionstorage的区别是:
cookie所占的数量有限(一般是4k)存储的东西比他们少,浏览器一般只允许存放300个cookie,每个站点最多存放20个cookie 每个cookie大小为4KB
创建Cookie
注意 JS“=”代表覆盖,cookie“=”代表添加
document.cookie=”名字=值 ”
document.cookie="user=family";
document.cookie="pass=123456";
alert(document.cookie);
例如:
删除Cookie
定义 cookie 路径以确保删除正确的 cookie。
把 expires 参数设置为过去的日期即可
例如:
<body>
<button>删除car的cookie</button>
<script>
var o = new Date
// 给当前日期加上一天
o.setDate(o.getDate() + 1)
console.log(o)
// 给cookie设置过期时间
document.cookie = "car=baoma;expires=" + o
// 这里点击删除之后 不会实时的刷新cookie 需要点击以下cookie控制台中的刷新按钮
document.querySelector("button").onclick = function () {
// 删除cookie 就是让他们的过期时间过期
var o = new Date
// 给当前日期减少一天
o.setDate(o.getDate() - 1)
console.log(o)
// 给cookie设置过期时间
document.cookie = "car=baoma;expires=" + o
}
</script>
</body>
图例:
封装Cookie
封装三个函数
setCookie()——创建Cookie
getCookie()——获取Cookie
removeCookie()——删除Cookie