js cookie

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>无标题文档</title>
<script>
var oDate = new Date();
oDate.setDate( oDate.getDate() + 5 );
document.cookie = 'username=leo;expires=' + oDate;
document.cookie = 'age=32';
alert(document.cookie);
</script>
</head>
<body>
</body>
</html>

在这里插入图片描述

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>无标题文档</title>
<script>
/*
cookie : 存储数据,当用户访问了某个网站(网页)的时候,我们就可以通过cookie来像访问者电脑上存储数据
	1.不同的浏览器存放的cookie位置不一样,也是不能通用的
	2.cookie的存储是以域名形式进行区分的
	3.cookie的数据可以设置名字的
	4.一个域名下存放的cookie的个数是有限制的,不同的浏览器存放的个数不一样
	5.每个cookie存放的内容大小也是有限制的,不同的浏览器存放大小不一样
	我们通过document.cookie来获取当前网站下的cookie的时候,得到的字符串形式的值,他包含了当前网站下所有的cookie。他会把所有的cookie通过一个分号+空格的形式串联起来
	如果我们想长时间存放一个cookie。需要在设置这个cookie的时候同时给他设置一个过期的时间
	cookie默认是临时存储的,当浏览器关闭进程的时候自动销毁
*/
//document.cookie = '名字=值';
/*document.cookie = 'username=leo';
document.cookie = 'age=32';*/
//document.cookie = '名称=值;expires=' + 字符串格式的时间;******
var oDate = new Date();
oDate.setDate( oDate.getDate() + 5 );
//alert(typeof oDate)
//alert(typeof oDate.toGMTString());
//内容最好编码存放,encodeURI
//alert( encodeURI('你好') );
//alert( decodeURI('%E4%BD%A0%E5%A5%BD') )
/*document.cookie = 'username='+ encodeURI('leo\n你好') +';expires=' + oDate.toGMTString();(oDate.toGMTString():字符串格式的时间)
document.cookie = 'age=32';*/
//document.cookie
//alert(decodeURI(document.cookie));	//username=leo; age=32
/*document.cookie = 'username=leo;expires=' + oDate.toGMTString();
document.cookie = 'age=32';*/
function setCookie(key, value, t) {
	var oDate = new Date();
	oDate.setDate( oDate.getDate() + t );
	document.cookie = key + '=' + value + ';expires=' + oDate.toGMTString();
}
function getCookie(key) {
	var arr1 = document.cookie.split('; ');
	for (var i=0; i<arr1.length; i++) {
		var arr2 = arr1[i].split('=');
		if ( arr2[0] == key ) {
			return decodeURI(arr2[1]);
		}
	}
}
function removeCookie(key) {
	setCookie(key, '', -1);
}
//setCookie('sex','男', 10);
//alert( getCookie('age') );
removeCookie('username');
removeCookie('age');
removeCookie('sex');
alert(document.cookie)
</script>
</head>
<body>
</body>
</html>

总结:
字符串格式的时间
内容最好编码存放,encodeURI
封装了获取,删除cookie的

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>记录用户名</title>
<script>
window.onload = function() {
	
	var oUsername = document.getElementById('username');
	var oLogin = document.getElementById('login');
	var oDel = document.getElementById('del');
	
	if ( getCookie('username') ) {
		oUsername.value = getCookie('username');
	}
	
	oLogin.onclick = function() {
		
		alert('登陆成功');
		setCookie('username', oUsername.value, 5);
		
	}
	
	oDel.onclick = function() {
		removeCookie('username');
		oUsername.value = '';
	}
	
}

function setCookie(key, value, t) {
	var oDate = new Date();
	oDate.setDate( oDate.getDate() + t );
	document.cookie = key + '=' + value + ';expires=' + oDate.toGMTString();
}

function getCookie(key) {
	var arr1 = document.cookie.split('; ');
	for (var i=0; i<arr1.length; i++) {
		var arr2 = arr1[i].split('=');
		if ( arr2[0] == key ) {
			return decodeURI(arr2[1]);
		}
	}
}

function removeCookie(key) {
	setCookie(key, '', -1);
}
</script>
</head>

<body>
	<input type="text" id="username" />
    <input type="button" value="登陆" id="login" />
    <input type="button" value="删除" id="del" />
</body>
</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值