前端开发

【H5】cookie/sessionStorage/localS

2019-07-08  本文已影响0人  Q小予o0

当前窗口再打开一个窗口

window.open()打开窗口的几种方式链接

<a :href="`javascript:window.open('${liveChatLink}','newindow','height=600,width=1000,top=80,left=200,toolbar=no,menubar=no,scrollbars=no,resizable=no,location=no,status=no');`">在线客服</a>

常见正则

数字:export const regNumber = /^[1-9]\d*$/; //纯数字
邮箱:regEmail= /[\w!#$%&'*+/=?^_`{|}~-]+(?:\.[\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\w](?:[\w-]*[\w])?\.)+[\w](?:[\w-]*[\w])?/;// 邮箱
手机号:/^(1[3-9][0-9])[0-9]{8}$/
是否有汉字:regexp = /.*[\u4e00-\u9fa5]+.*$/;

sessionStorage 、localStorage 和 cookie 之间的区别

共同点:都是保存在浏览器端,且同源的。

区别:cookie数据始终在同源的http请求中携带(即使不需要),即cookie在浏览器和服务器间来回传递;cookie数据还有路径(path)的概念,可以限制cookie只属于某个路径下。存储大小限制也不同,cookie数据不能超过4k,同时因为每次http请求都会携带cookie,所以cookie只适合保存很小的数据,如会话标识。

而sessionStorage和localStorage不会自动把数据发给服务器,仅在本地保存。sessionStorage和localStorage 虽然也有存储大小的限制,但比cookie大得多,可以达到5M或更大。

数据有效期不同,sessionStorage:仅在当前浏览器窗口关闭前有效,自然也就不可能持久保持;localStorage:始终有效,窗口或浏览器关闭也一直保存,因此用作持久数据;cookie只在设置的cookie过期时间之前一直有效,即使窗口或浏览器关闭。

作用域不同,sessionStorage不在不同的浏览器窗口中共享,即使是同一个页面;localStorage 在所有同源窗口中都是共享的;cookie也是在所有同源窗口中都是共享的。Web Storage 支持事件通知机制,可以将数据更新的通知发送给监听者。Web Storage 的 api 接口使用更方便。

HTML5 history.pushState()和history.replaceState()

history.pushState(data,title,url) //每执行一次都会增加一条历史记录,浏览器在返回时,就不会返回前一个页面了,

data:要设置的history.state的值,可以是任意类型的值,可根据此值进行判断执行想要的操作。
title:现在大多数浏览器不支持或者忽略这个参数,最好用null代替。
url:地址栏的值,若不需要可用空来代替。
replaceState()是用来修改当前的历史记录(history实体),作用是改了历史记录,点击浏览器返回的是上一个页面,而不是修改history.state之前的页面
tt2s.jpg
上一篇下一篇

猜你喜欢

热点阅读