JavaScript操作Cookie:读取、存取、删除与设置

需积分: 50 6 下载量 143 浏览量 更新于2024-09-24 收藏 4KB TXT 举报
在JavaScript中操作Cookie是一种常见的客户端数据存储技术,用于在客户端浏览器中临时保存用户信息,例如登录状态、偏好设置等。本文档主要介绍了如何通过JavaScript实现Cookie的读取、存取和删除,以实现“jsCOOKIE记住帐号或密码”的功能。 首先,我们来看一下如何在页面加载时检查是否有已记住的用户名。在`window.onload`事件处理函数中,`GetLastUser()`函数被调用。这个函数通过一个预设的GUID(如`var id="49BAC005-7D5B-4231-8CEA-16939BEACD67";`)作为键来获取Cookie中的用户名。如果Cookie存在,就将值赋给文本框`txtUserName`;否则,设置默认值为"001"。 接下来,当用户点击登录时,`SetPwdAndChk()`函数会被触发。此函数首先获取用户名,然后根据用户是否勾选“记住密码”选项进行不同操作: 1. 如果用户选择记住密码,函数会获取密码值,并设置一个有效期为14天的Cookie,键为用户名,值为密码。这是通过创建一个名为`expdate`的新Date对象并将其时间戳设置为当前时间加上14天的毫秒数来实现的。 2. 如果用户没有勾选“记住密码”,那么在登录后立即将过期时间设置为当前时间,这样在下一次访问时Cookie将自动失效,从而清除用户密码信息。 为了实现Cookie的读取,`GetCookie()`函数被定义,但文档中未提供其具体实现,通常这会涉及使用`document.cookie`属性来解析字符串,然后根据分号分隔符分割获取特定键的值。 至于存取Cookie,`GetCookie()`和`SetCookie()`函数分别用于读取和设置Cookie。`SetCookie()`函数会接收三个参数:键、值和一个可选的时间戳或有效期对象(如`expdate`)。这个函数会构建一个符合Cookie规范的字符串,如`key=value; expires=date; path=path; domain=domain.com; secure; HttpOnly`,然后将其设置到浏览器中。 删除Cookie则涉及到`ResetCookie()`函数,它可能需要清空特定键的Cookie,或者设置过期时间为一个过去的时间点,使得下次尝试读取时Cookie被视为已过期。 本文档展示了JavaScript如何通过操作Cookie来实现简单的登录功能,包括读取已存储的用户名、根据用户选择存储或删除密码。理解这些概念对于开发需要处理用户会话和数据持久化的Web应用非常有用。