js读写(删除)Cookie实例详解


Posted in Javascript onApril 17, 2013
//JS操作cookies方法! 
//写cookies 
function setCookie(name,value) 
{ 
var Days = 30; 
var exp = new Date(); 
exp.setTime(exp.getTime() + Days*24*60*60*1000); 
document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString(); 
} 
//读取cookies 
function getCookie(name) 
{ 
var arr,reg=new RegExp("(^| )"+name+"=([^;]*)(;|$)"); 
if(arr=document.cookie.match(reg)) return unescape(arr[2]); 
else return null; 
} 
//删除cookies 
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(); 
} 
//使用示例 
setCookie("name","hayden"); 
alert(getCookie("name")); 
//如果需要设定自定义过期时间 
//那么把上面的setCookie 函数换成下面两个函数就ok; 
//程序代码 
function setCookie2(name,value,time){ 
var strsec = getsec(time); 
var exp = new Date(); 
exp.setTime(exp.getTime() + strsec*1); 
document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString(); 
} 
function getsec(str){ 
alert(str); 
var str1=str.substring(1,str.length)*1; 
var str2=str.substring(0,1); 
if (str2=="s"){ 
return str1*1000; 
}else if (str2=="h"){ 
return str1*60*60*1000; 
}else if (str2=="d"){ 
return str1*24*60*60*1000; 
} 
} 
//这是有设定过期时间的使用示例: 
//s20是代表20秒 
//h是指小时,如12小时则是:h12 
//d是天数,30天则:d30 
//暂时只写了这三种 
setCookie2("name2","hayden2","s20"); 
alert(getCookie("name2"));

以下是几个比较常见的好用的函数:
function GetCookieVal(offset) 
//获得Cookie解码后的值 
{ 
var endstr = document.cookie.indexOf (";", offset); 
if (endstr == -1) 
endstr = document.cookie.length; 
return unescape(document.cookie.substring(offset, endstr)); 
} 
function SetCookie(name, value) 
//设定Cookie值 
{ 
var expdate = new Date(); 
var argv = SetCookie.arguments; 
var argc = SetCookie.arguments.length; 
var expires = (argc > 2) ? argv[2] : null; 
var path = (argc > 3) ? argv[3] : null; 
var domain = (argc > 4) ? argv[4] : null; 
var secure = (argc > 5) ? argv[5] : false; 
if(expires!=null) expdate.setTime(expdate.getTime() + ( expires * 1000 )); 
document.cookie = name + "=" + escape (value) +((expires == null) ? "" : ("; expires="+ expdate.toGMTString())) 
+((path == null) ? "" : ("; path=" + path)) +((domain == null) ? "" : ("; domain=" + domain)) 
+((secure == true) ? "; secure" : ""); 
} 
function DelCookie(name) 
//删除Cookie 
{ 
var exp = new Date(); 
exp.setTime (exp.getTime() - 1); 
var cval = GetCookie (name); 
document.cookie = name + "=" + cval + "; expires="+ exp.toGMTString(); 
} 
function GetCookie(name) 
//获得Cookie的原始值 
{ 
var arg = name + "="; 
var alen = arg.length; 
var clen = document.cookie.length; 
var i = 0; 
while (i < clen) 
{ 
var j = i + alen; 
if (document.cookie.substring(i, j) == arg) 
return GetCookieVal (j); 
i = document.cookie.indexOf(" ", i) + 1; 
if (i == 0) break; 
} 
return null; 
} 
//测试 
SetCookie("sunshine","1986"); 
alert(GetCookie("sunshine"));
Javascript 相关文章推荐
Extjs 几个方法的讨论
Jan 28 Javascript
js 获取(接收)地址栏参数值的方法
Apr 01 Javascript
开发插件的两个方法jquery.fn.extend与jquery.extend
Nov 21 Javascript
jquery实现动态操作select选中
Feb 11 Javascript
JavaScript性能优化总结之加载与执行
Aug 11 Javascript
详解Vue整合axios的实例代码
Jun 21 Javascript
超级简易的JS计算器实例讲解(实现加减乘除)
Aug 08 Javascript
解决修复npm安装全局模块权限的问题
May 17 Javascript
解决vue项目打包后提示图片文件路径错误的问题
Jul 04 Javascript
express.js中间件说明详解
Mar 19 Javascript
浅谈Javascript中的对象和继承
Apr 19 Javascript
angular异步验证防抖踩坑实录
Dec 01 Javascript
基于dom编程中 动态创建与删除元素的使用
Apr 17 #Javascript
javaScript(JS)替换节点实现思路介绍
Apr 17 #Javascript
用函数模板,写一个简单高效的 JSON 查询器的方法介绍
Apr 17 #Javascript
JS对img进行操作(换图片/切图/轮换/停止)
Apr 17 #Javascript
用显卡加速,轻松把笔记本打造成取暖器的办法!
Apr 17 #Javascript
js跑马灯代码(自写)
Apr 17 #Javascript
获取元素距离浏览器周边的位置的方法getBoundingClientRect
Apr 17 #Javascript
You might like
PHP连接MySQL数据库的三种方式实例分析【mysql、mysqli、pdo】
2019/11/04 PHP
PHP中类与对象功能、用法实例解读
2020/03/27 PHP
Javascript写了一个清除“logo1_.exe”的杀毒工具(可扫描目录)
2007/02/09 Javascript
JS之小练习代码
2008/10/12 Javascript
Extjs中使用extend(js继承) 的代码
2012/03/15 Javascript
jquery时间下拉框小例子
2013/04/15 Javascript
js实现简单锁屏功能实例
2015/05/27 Javascript
js表单提交和submit提交的区别实例分析
2015/12/10 Javascript
微信小程序 form组件详解及简单实例
2017/01/10 Javascript
JavaScript之排序函数_动力节点Java学院整理
2017/06/30 Javascript
Vue axios 中提交表单数据(含上传文件)
2017/07/06 Javascript
十个免费的web前端开发工具详细整理
2017/09/18 Javascript
vue2中使用sass并配置全局的sass样式变量的方法
2018/09/04 Javascript
详解搭建es6+devServer简单开发环境
2018/09/25 Javascript
JavaScript实现简单进度条效果
2020/03/25 Javascript
vue 子组件修改data或调用操作
2020/08/07 Javascript
python通过邮件服务器端口发送邮件的方法
2015/04/30 Python
Python编程pygal绘图实例之XY线
2017/12/09 Python
python读取和保存视频文件
2018/04/16 Python
python 字典item与iteritems的区别详解
2020/04/25 Python
如何在vscode中安装python库的方法步骤
2021/01/06 Python
关于box-sizing的全面理解
2016/07/28 HTML / CSS
CSS3使用transition属性实现过渡效果
2018/04/18 HTML / CSS
巴西体育用品商店:Lojão dos Esportes
2018/07/21 全球购物
图库照片、免版税图片、矢量艺术、视频片段:Depositphotos
2019/08/02 全球购物
css animation配合SVG制作能量流动效果
2021/03/24 HTML / CSS
科长竞争上岗演讲稿
2014/05/12 职场文书
代理人委托书
2014/08/01 职场文书
大学生感恩父母演讲稿
2014/08/28 职场文书
运动会广播稿100字
2014/09/14 职场文书
师德自我剖析材料范文
2014/10/06 职场文书
医学专业大学生职业生涯规划书
2014/10/25 职场文书
2015年食品安全宣传周活动总结
2015/07/09 职场文书
python通过函数名调用函数的几种方法总结
2021/06/07 Python
Go语言空白表示符_的实例用法
2021/07/04 Golang
讲解Python实例练习逆序输出字符串
2022/05/06 Python