您的位置:首页 > Web前端 > JavaScript

JavaScript操作cookie

2016-07-27 12:34 495 查看
JavaScript操作Cookie的本质是对document.cookie进行赋值。

cookie接受的值是key-value的形式,每一个key-value之间用分号隔开。

删除一个cookie,声明一个名字(key)相同,过期时间小于当前时间的cookie

解决中文乱码的两个关键类:

encodeURI()—–中文编码 和 decodeURI()——中文解码

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>

<body>
<h1>演示JavaScript操作cookie技术</h1>
<div id="div1"></div>
<div id="div2"></div>

<script type="text/javascript">
//1 创建/修改一个cookie
function create(){
var date = new Date();
//过期时间加2小时,以毫秒计
date.setTime( date.getTime()+ 1000*60*60*2);
//中文编码。后台采用了URIDecode()解码,得用这个方法编码
nm = encodeURI(nm);          document.cookie="name="+nm+";expires="+date.toGMTString()+";path=/";
}
create();//调用函数

//2 删除一个cookie---声明一个名字相同的过期时间的cookie
function _delete(){
var date = new Date(1970,1,1);
date.setTime( date.getTime());           document.cookie="name=aa;expires="+date.toGMTString()+";path=/";
}
delete();//调用函数

//3 遍历cookie
function visit(){
var cs = document.cookie.split(";");
for(var x=0;x<cs.length;x++){
cs[x] = decodeURI(cs[x]);//中文解码
//下面两句代码等价
//var div1 = document.getElementById("div1");
//js中,id对象可以直接通过“id名”访问
div1.innerHTML +="<br/>"+cs[x];
var str = cs[x].split("=");
div2.innerHTML +="<br/>"+str[1];
}
}
visit();
</script>
</body>
</html>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  cookie javascript