7.5JavaScript-正则表达式&Cookie

本文介绍了正则表达式常用限定符,如?、{n}等,还讲解了String类中支持正则的方法,像search、match等,并给出手机号、邮箱校验的正则示例。此外,阐述了Cookie的概念、特性,对比了其与localstorage和sessionstorage的区别,还介绍了Cookie的创建与删除方法。

一、正则-常用的限定符

*    

匹配前面的子表达式零次或多次


+    

匹配前面的子表达式一次或多次


?    

匹配前面的子表达式零次或一次

例如:

正则意思为:以小写字母开头或以数字开头,以小写字母结尾或以数字结尾 出现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

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

<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>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值