html学习 - Javascript设置和获取cookies

Cookies

Cookie,有时也用其复数形式Cookies,指某些网站为了辨别用户身份、进行session跟踪而储存在用户本地终端上的数据(通常经过加密)。

Cookies设置

我也是才学不久的Cookies。所以先写些简单的。
Cookies设置比较简单,通常情况下,每个域名都有自己单独的Cookies,用来保存一些简单数据和用户的登录状态等。
Cookies是本地保存的,所以可以在本地清除,在服务器上用来保存这些数据的功能是SESSION。

下面是设置的方法:假如我们需要设置textsecond的值。假如获取text的值如下:(jquery的方法)
var text = $('#testinput').val(); // 此行是为了获取text值,可以用自己的方法

document.cookie = "text=" + escape(text);

document.cookie = "second=2";

上面这两行是设置cookie的值的方法,首先在cookie中,像上面那样赋值两边,名字不同,等同于如下代码:
document.cookie = "text="+escape(text)+"; second=2";
赋值两次,假如属性名字不同是不会覆盖的,这里使用的escape()函数的功能是用来转义的,因为cookie中名字一般不允许 / = "这些符号当名字和值的,但是假如有这些符号或者空格怎么办? 就需要escape()来进行转义,所以空格就会转义成%20这种符号,text1 text2就会变成text1%20text2这样子。

获取cookie和设置一样比较方便。代码如下:

var strCookie = document.cookie;
		//获取当前域名所有cookie值
		var arrCookie = strCookie.split("; ");//用split把字符串分割,记得分号后有个空格
		for (var i = 0; i < arrCookie.length; i++) {
			var arr = arrCookie[i].split("=");//把分割后的数组内容再用=分割。
			if (arr[0] == "text") {//假如分割后的前半部分和我们需要的属性名字一样
				alert(arr[1]);//我们得到的后半部分就是这个属性的值
			}
		}

这样子就可以很简单的获取到cookie的值了。

但其实设置cookie的时候,还需要设置一个cookie的过期时间,这个后面更新。

你可能感兴趣的:(html5)