JavaScript中Cookie操作实例
JavaScript中的Cookie操作指南
Cookie是一种保存在客户端硬盘上的用户数据信息。这些信息以文件的形式储存在Cookies文件夹中,由所访问的Web站点创建,用以长久保存客户端与Web站点之间的会话数据。这些Cookie数据只能被创建它们的Web站点读取。
一、Cookie对象及格式
Cookie对象是以文件的形式存在的,其文件名通常为“NSCookie.txt”或“IE用户名@域名.txt”。有两种类型的Cookie:持久性Cookie和会话Cookie。持久性Cookie会被存储到客户端的硬盘上,而会话Cookie则存储在浏览器进程的内存中,浏览器关闭后即被销毁。
二、JavaScript中的Cookie操作
1. 写入Cookie
使用JavaScript写入Cookie的代码如下:
```javascript
document.cookie = "关键字=值; expires=有效日期; path=路径; domain=域名; secure=true";
```
2. 读取Cookie
读取Cookie的代码如下:
```javascript
document.cookie
```
3. 删除Cookie
删除Cookie的代码如下:
```javascript
document.cookie = "关键字=; expires=当前日期";
```
三、有效日期及注意事项
有效日期的格式应为Wdy, DD-Mon-YY HH:MM:SS GMT。每个Web站点(domain)可以建立20个Cookie数据,每个浏览器可以存储300个Cookie数据,大小为4k字节。客户有权禁止Cookie数据的写入。值得注意的是,Cookie的使用需要遵循一定的隐私策略和数据保护原则。
四、实例演示
下面是一个简单的HTML页面实例,演示了如何使用JavaScript创建、写入和读取一个名为“name”的Cookie:
```html
var today = new Date(); //获取当前时间
var expiredDay = new Date(); //创建一个新的日期对象,用于设置cookie的过期时间
var msPerMonth = 1000 60 60 24 30; //定义一个月的天数(以毫秒为单位)用于计算过期时间 假设一个月有30天进行演示,实际应用需要灵活处理不同月份的天数问题。例如使用JavaScript内置的Date对象提供的方法计算一个月后的日期。具体实现如下:expiredDay.setMonth(today.getMonth()+1);expiredDay.setDate(today.getDate());来确保下个月的同一天过期。这样就避免了因为月份天数不同导致的计算误差问题。 --> 暂时假设一个月之后过期,实际使用时需要根据具体情况调整过期时间计算方式。 假设一个月有固定的天数进行演示(假设不考虑不同月份的天数差异)。通过设置过期时间后 将Cookie保存到硬盘上 当用户一个月之后再访问该网站时,网站服务器可以读取这个已经保存的Cookie数据 而无需重新写入新的Cookie 数据可以沿用旧的 Cookie 数据 可以保存用户的登录状态或者其他一些用户自定义的设置等信息 提高用户体验 -->设置一个月之后过期,并转换为GMT格式的字符串赋值给expires属性。然后写入cookie:"name=mengdd;expires="+expiredDay.toGMTString();完成写入操作。之后输出提示信息表明已经成功写入cookie。然后读取cookie并输出其内容以及过期日期信息。 这是一个简单的HTML页面示例,通过JavaScript创建并写入一个名为“name”的Cookie,然后读取并输出其内容以及过期日期信息。
编程语言
- JavaScript中Cookie操作实例
- 用XML和SQL 2000来管理存储过程调用
- asp.net读取excel中的数据并绑定在gridview
- ASP.NET Core如何添加统一模型验证处理机制详解
- WordPress开发中用于标题显示的相关函数使用解析
- php实现微信公众平台账号自定义菜单类
- ThinkPHP模版引擎之变量输出详解
- javascript IP、域名、手机号码正则表达式验证代码
- PHP读取PDF内容配合Xpdf的使用
- JS遍历页面所有对象属性及实现方法
- 百度小偷
- php用户注册时常用的检验函数实例总结
- 如何使用php脚本给html中引用的js和css路径打上版
- Thinkphp框架开发移动端接口(1)
- 用jQuery获取table中行id和td值的实现代码
- 利用ASP.NET MVC+Bootstrap搭建个人博客之修复UEditor编