这篇文章主要介绍操作饼的原生方法有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
1。平时如何操作饼干
文档。饼干能获取到当前域所有的饼干字符串。每个饼干用分号进行隔开:
。,,//,,=1;, b=2, c=wenzi";
操作饼,均是在操作文档。饼干。如下面就是我常用的一段代码:
/* * ,*写饼干 ,* @param {字符串},name 写饼干的关键 ,* @param {字符串|数字},value 写cookie的值 ,* @param {号码},day 存储的时间,默认30天 ,*/export const setCookie =,(名字:,字符串,,值:,string |,号码,,day =, 30):, void =祝辞,{ const 才能;exp =, new 日期(); exp.setTime才能(exp.getTime (), +, day *, 24, *, 60, *, 60, *, 1000); document.cookie 才能=,' ${名称}=${逃脱(value.toString())};路径=/;到期=$ {exp.toUTCString ()} '; };/* * ,*读取饼干 ,* @param {字符串},name 要获取的饼干名称 ,* @param {|布尔数},type 是否直接获取对应的值,若存入真值,则直接返回,否则进行解码 ,*/export const getCookie =,(名字:字符串):,string |, null =祝辞,{ const 才能;reg =, new 正则表达式(’(^ |,)${名称}=((^;)*)(;| $)'); const 才能;arr =, document.cookie.match(注册); if 才能;(arr), { ,,,return unescape (arr [2]); ,,} return 才能;零; };/* * ,*删除饼干 ,* @param name 删除的饼干名称 ,*/export const delCookie =,(名字:字符串),=祝辞,{ if 才能;(!),返回; 例:const 才能;Date =, new 日期(); ex.setTime才能(ex.getTime(),安康;1); document.cookie 才能=,' ${名称}=;,到期=$ {ex.toUTCString()};路径=/'; };
可以看到设置,获取和删除饼干,都是在文档。饼干上进行操作的。
2。新方式cookieStore
现在Chrome有了更方便操作饼的方法了cookieStore,这个方法是在Chrome87版本加入的,兼容性还不太好。
下图是当前日期2021/03/15的兼容性概览,可以发现仅仅是Chrome体系支持了cookieStore。
不过我们可以先来了解它的用法。
cookieStore现在只能在https协议下的域名才能访问的到,其他http协议的域名里会提示cookieStore为定义,或者设置失败。
2.1基本方法
cookieStore是一个类似localStorage的对象类型变量。
可以看到cookieStore主要有5个方法:
- <李>
设置:设置饼干,可以是集(名称,值),也可以是集({名称,值});
李> <李>得到:获取饼干,可以是(名字),或者得到({name});
李> <李>getAll:获取所有的饼干;
李> <李>删除:删除饼干;
李> <李>onchange:监听饼干的变化;
李>前4个方法天然支持承诺。接下来我们一个个来了解下。
2.2设置饼干
cookieStore。集方法可以设置cookie,并返回一个承诺状态,表示是否设置成功。
cookieStore 这里才能(& # 39;用户名# 39;,,& # 39;wenzi& # 39;) ,然后才能((),=祝辞,console.log(& # 39;设置用户名成功& # 39;)) .catch才能((),=祝辞,console.error(& # 39;设置用户名失败& # 39;));
如果我们想要设置更多的属性,例如过期时间,可以传入一个对象类型:
cookieStore 这里({才能 ,,,的名字:,& # 39;年龄# 39; ,,,的值:,18日 ,,,:到期,new 日期().getTime(), +, 24, *, 60, *, 60, *, 1000年, })才能 ,然后才能((),=祝辞,console.log(& # 39;设置年龄成功& # 39;)) .catch才能((),=祝辞,console.error(& # 39;设置年龄失败& # 39;));
价值中所有的数据都会默认先执行toString(),然后再进行存储,因此有些非基本类型的数据,最好先转换好。
上面都是我们设置饼干成功的情况,那么什么时候会设置失败呢?在本地localhost环境会设置失败。