这篇文章主要介绍了javascript 中Cookie读、写与删除操作的相关资料,需要的朋友可以参考下javascript 中Cookie读、写与删除操作
前言:
在这个前端横行的时候,页面之间的交互需要数据的传递,有的数据通过url传参的形式可以很好地解决,但是对于部分需要改变的参数,你如说从页面A到页面B选择数据,然后从页面B将数据再传到页面A(典型的栗子就是收货地址的选择),针对这一块我是通过存储cookie来解决的。
对于cookie的操作我给出了一些简单的封装,当然也借鉴了前辈们经验,自己糅合了一下,对于cookie的操作,无非是读写和删除,我们首先来看一下写的操作,有写才有读,进而进行删除等操作。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
function setCookie(name, value , time) {
time = time ? parseFloat(time) : 0 ;
var exp = new Date();
exp.setTime(exp.getTime() + time);
document.cookie = name + "=" + encodeURIComponent(value) + ";expires=" + (time ? exp.toGMTString() : 'session' );
}
|
我们有了写的操作了,那么我们再来看看对于读的操作。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
function getCookie(name) {
var arr, reg = new RegExp( "(^| )" + name + "=([^;]*)(;|$)" );
if (arr = document.cookie.match(reg))
return decodeURIComponent(arr[2]);
else
return null ;
}
|
接下就是对cookie的删除操作了,其实这个操作很简单,就是将cookie设置过期,cookie就自动失效了
1 2 3 4 5 6 7 8 9 10 11 12 |
function delCookie(name) {
var exp = new Date();
exp.setTime(exp.getTime() - 1);
var cval = getCookie(name);
if (cval != null )
document.cookie = name + "=" + cval + ";expires=" + exp.toGMTString();
}
|
以上就是对cookie的一些简单操作
接下来我们来谈一点cookie的深层次的问题:cookie的跨域
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | Js跨域同步cookie怎么实现
document.cookie = "name=" + "value;" + "expires=" + "datatime;" + "domain=" + "" + "path=" + "/path" + "; secure" ;
<iframe src= 'http://网站:1234/test/Index' width= '100' height= '100' style= "display:none" ></iframe>
var url = window.location.toString();
var get = url.substring(url.indexOf( "liuph" ));
var idx = get.indexOf( "=" );
if (idx != -1) {
var name = get.substring(0, idx);
var val = get.substring(idx + 1);
setCookie(name, val, 1);
}
|
上面是我整理给大家的,希望今后会对大家有帮助。
相关文章:
Node.js+Koa实现JWT用户认证步骤详解
jQuery.i18n.properties如何实现js国际化标准
动态加载JS文件三种方式总结
以上就是javascript 中Cookie读、写与删除操作(图文教程)的详细内容