`
DBear
  • 浏览: 231256 次
  • 性别: Icon_minigender_2
  • 来自: 上海
社区版块
存档分类

JavaScript操作cookie

阅读更多

相关知识:


不同的浏览器对cookie的实现也不一样,但其性质是相同的。例如在Windows 2000以及Windows xp中,cookie文件存储于documents and settings\userName\cookie\文件夹下。通常的命名格式为:userName@domain.txt。

应用场合:


缺点:

1.cookie可能被禁用。当用户非常注重个人隐私保护时,他很可能禁用浏览器的cookie功能;

2.cookie可能被删除。因为每个cookie都是硬盘上的一个文件,因此很有可能被用户删除;



设置cookie
1.每个cookie都由多个名/值对组成,如“userId=111;style=grid”。

2.设置cookie有两种方式,我把它们分别叫做“覆盖型”和“追加型”。

3.“覆盖型”。通过将一整个字符串赋值给document.cookie,形式如:document.cookie=”userId=828;style=grid″。使用此方法,每次执行都相当于将cookie重置。


5. 在cookie 的名或值中不能使用分号(;)、逗号(,)、等号(=)以及空格。在cookie的名中做到这点很容易,但要保存的值是不确定的。如何来存储这些值呢?方法是用escape()函数

进行编码,它能将一些特殊符号使用十六进制表示,例如空格将会编码为“20%”,从而可以存储于cookie值中,而且使用此种方案还可以避免中文乱码的出现。

例如:document.cookie=”str=”+escape(”I love ajax”) 相当于:document.cookie=”str=I%20love%20ajax”; 当使用escape()编码后,在取出值以后需要使用unescape()进行解码

才能得到原来的cookie值。

6.cookie的有效期可以通过设置“expires”实现,值以毫秒记,参考如下代码,


var expires = expires * 1000 * 60 * 60 * 24;

var expires_date = new Date( today.getTime() + (expires) );

document.addCookie("expires=" + expires_date.toGMTString() : "" );

 

7.指定可访问cookie的路径 (转)

默认情况下,如果在某个页面创建了一个cookie,那么该页面所在目录中的其他页面也可以访问该cookie。如果这个目录下还有子目录,则在子目录中也可以访问。例如在www.xxxx.com/html/a.html中所创建的cookie,可以被www.xxxx.com/html/b.html或www.xxx.com/ html/ some/c.html所访问,但不能被www.xxxx.com/d.html访问。 为了控制cookie可以访问的目录,需要使用path参数设置cookie,语法如下: document.cookie="name=value; path=cookieDir"其中cookieDir表示可访问cookie的目录。例如: document.cookie="userId=320; path=/shop"; 就表示当前cookie仅能在shop目录下使用。 如果要使cookie在整个网站下可用,可以将cookie_dir指定为根目录,例如: document.cookie="userId=320; path=/" 指定可访问cookie的主机名和路径类似,主机名是指同一个域下的不同主机,例如:www.google.com和gmail.google.com就是两个不同的主机名。默认情况下,一个主机中创建的cookie在另一个主机下是不能被访问的,但可以通过domain参数来实现对其的控制,其语法格式为: document.cookie="name=value; domain=cookieDomain"; 以google为例,要实现跨主机访问,可以写为: document.cookie="name=value;domain=.google.com"; 这样,所有google.com下的主机都可以访问该cookie。


获取cookie

有两种方式:


function GetCookie(name)
{
var result = null;
var myCookie = document.cookie + ";";
var searchName = name + "=";
var startOfCookie = myCookie.indexOf(searchName);
var endOfCookie;
if (startOfCookie != -1)
{
startOfCookie += searchName.length;
endOfCookie = myCookie.indexOf(";",startOfCookie);
result = unescape(myCookie.substring(startOfCookie, endOfCookie));
}
return result;
}

 



2. 通过正则式

function GetCookie(name)
{
  var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));
if(arr != null) return unescape(arr[2]); return null;
}




删除cookie

将指定cookie的expires设置为当前时间之前

 

分享到:
评论

相关推荐

    javascript 操作cookie.js

    javascript 操作cookiejavascript 操作cookiejavascript 操作cookie

    javascript操作cookie

    ### JavaScript操作Cookie知识点详解 #### 一、Cookie简介 Cookie是一种小型的数据文件,通常由服务器发送到客户端(浏览器),客户端将这些数据存储在本地硬盘上,并在后续与该服务器进行交互时将数据发送回...

    C#和javascript操作cookie

    本文将详细探讨如何在C#后端和JavaScript前端中操作Cookie。 首先,C#在ASP.NET中处理Cookie主要通过`HttpCookie`类。创建一个Cookie的基本步骤如下: 1. **创建Cookie对象**:使用`new HttpCookie(string name)`...

    javascript操作cookie_获取与修改代码

    ### 知识点二:JavaScript操作Cookie的方法 在JavaScript中,我们可以直接通过操作`document.cookie`来读取和写入cookie值。不过这种方式较为原始,不方便维护和扩展。为了更好地管理cookie,我们可以封装一些方法...

    javascript操作Cookie(设置、读取、删除)方法详解

    通过以上三种操作Cookie的方法,开发者可以利用JavaScript在浏览器端灵活地管理Cookie。需要注意的是,Cookie的大小有限制,通常不超过4KB,并且在使用Cookie时还需要考虑用户隐私和安全的问题,避免存储敏感信息。...

    浅析javascript操作 cookie对象

    JavaScript操作Cookie相对JSP或Servlet来说较为复杂,因为JSP和Servlet可以直接在服务器端处理,而JavaScript需要在客户端进行,这涉及到对用户浏览器环境的依赖和可能的安全限制。尽管如此,JavaScript的Cookie操作...

    JavaScript操作cookie类实例

    ### JavaScript操作Cookie类知识点详解 #### 一、JavaScript操作Cookie类的实例用法 1. **设置Cookie** 在JavaScript中,我们可以创建一个Cookie类的实例,然后通过该实例的SetCookie方法来设置Cookie值。例如,...

    javascript针对cookie的基本操作实例详解.docx

    #### JavaScript操作Cookie的基本技巧 ### 一、设置Cookie 设置Cookie通常包括添加和修改功能。如果原有的Cookie名称已经存在,则添加此Cookie就相当于修改了此Cookie。设置Cookie时还可能包含一些额外的选项,例如...

    javascript实现cookie功能

    JavaScript是Web开发中的重要脚本语言,用于处理客户端的交互逻辑。在网页中实现Cookie功能是JavaScript的一个...通过学习和掌握JavaScript操作Cookie的方法,可以更好地理解和实践Web开发中的用户状态管理和会话管理。

    JavaScript操作Cookie详解

    主要介绍了JavaScript操作Cookie详解,本文讲解了什么是Cookie、Cookie基础知识、Cookie常见问题、cookie 有两种清除方式、Cookie基础用法、Cookie高级用法等内容,需要的朋友可以参考下

    JavaScript操作Cookie方法实例分析

    JavaScript操作Cookie的方法包括设置cookie、读取cookie、删除cookie以及删除所有cookie,这些方法对于前端开发者在Web开发过程中对用户进行跟踪、个性化设置、状态管理等方面有着重要的作用。下面详细介绍这些操作...

    Javascript操作cookie的函数代码

    ### Javascript操作Cookie的函数代码 #### 知识点概述: 在Web开发中,Cookie用于在用户的浏览器中存储少量数据,是Web存储解决方案的一部分。本文详细介绍了JavaScript中操作Cookie的函数,包括简单版本和封装...

    Javascript Cookie操作类的封装

    接下来,我们来创建一个名为`CookieManager`的JavaScript类,用于封装Cookie的操作。这个类需要包含以下方法: 1. **setCookie**:用于设置Cookie。需要传入键(key)、值(value)以及可选的过期时间(days)和...

    javascript操作cookie的文章(设置,删除cookies)

    整体而言,JavaScript操作Cookie主要涉及到解析和构造document.cookie字符串,通过字符串操作来实现Cookie的增删改查功能。在实际应用中,需要注意Cookie的生命周期、作用域(域和路径)以及安全问题,合理利用这些...

Global site tag (gtag.js) - Google Analytics