上一页 首页 下一页

JavaScript高级教程

JavaScript高级教程
JavaScript高级教程 - 第二课
MCHWEB

第十一页:读取和编写多重cookies

上一篇中我们学习了如何将大量的学习包含在一个cookie中.
另一种方法是使用多重cookies.

保存多重cookies的方法很直观.每一个cookie都有一个名称.
上一个例子中的cookie的名称是my_happy_cookie,我们可以
这样:
var the_cookie ="my_happy_cookie=happiness_and_joy";

document.cookie =the_cookie;

要保存多重cookie,只需给每个cookie一个不同的名字.如果
你要加入一个新的cookie,设置document.cookie 时并不会删
除前面已经设置了的cookies,所以:

var the_cookie ="my_happy_cookie=happiness_and_joy";

document.cookie = the_cookie;

var another_cookie= "my_other_cookie=more_joy_more_happiness";

document.cookie = another_cookie;

现在你需要访问这两个cookies,有些复杂,所以你需要明了整
个过程.假设你执行了上面的代码,现在想访问
my_happy_cookie.如果你查看document.cookie的内容,你会
看到:

my_happy_cookie=happiness_and_joy;
my_other_cookie=more_joy_more_happiness;

这样很直观,但是如果你想访问某个特定的cookie则有些困难.
下面的代码可以帮助你找出某个特定的cookie:
function WM_readCookie(name)
{

//如果没有cookie则返回false或者取得值并返回该值
if(document.cookie == '')
return false;
else
return
unescape(WM_getCookieValue(name));
}



function WM_getCookieValue(name)
{

// Declare variables.

var firstChar,lastChar;

// Get the entire cookie string.
// (This may have other
name=value pairs in it.)

var theBigCookie = document.cookie;

// Grab
just this cookie from theBigCookie string.

// Find the start of
'name'.

firstChar = theBigCookie.indexOf(name);

// If you found it,


if(firstChar != -1)
{

// skip 'name' and '='.

firstChar +=
name.length + 1;

// Find the end of the value string (i.e. the next
';').

lastChar = theBigCookie.indexOf(';', firstChar);


if(lastChar == -1) lastChar = theBigCookie.length;

// Return the
value.

return theBigCookie.substring(firstChar, lastChar);

} else
{

// If there was no cookie, return false.

return false;



}

}

下面我们将学习一下cookies可以做的真正酷的内容。 >>

JavaScript高级教程
第一页 Javascript高级教程-第2日
第二页 神奇的字符串处理
第三页 子字符串
第四页 分割方法(splitting method)
第五页 相关数组
第六页 相关数组的一个例子
第七页 介绍cookie
第八页 深入了解cookies
第九页 读取cookies
第十页 复杂的cookies读取
第十一页 读取和编写多重cookies
第十二页 再次深入了解cookies
第十三页 cookie路径和域

[ 第1课 ][第2课][ 第3课 ][ 第4课 ][ 第5课 ]



上一页 首页 下一页