什么是cookie?
Cookie是存储在用户计算机上的小文本文件,用于存储用户信息。当用户浏览网站时,网站可以将cookie信息存储在用户计算机上。当用户再次访问该网站时,网站会检查用户的cookie并使用存储在其中的信息,以更好地提供服务。
如何创建cookie?
在JavaScript中,可以通过document.cookie来创建cookie,document.cookie是一个包含当前文档中所有cookie键值对的字符串。以下是一些示例代码:
// 创建一个名称为username,值为John的cookie,过期时间为1天
document.cookie = "username=John; expires=" + new Date(Date.now() + 864e5).toUTCString() + "; path=/";
// 创建一个名称为user_email,值为abc@example.com的cookie,过期时间为7天
document.cookie = "user_email=abc@example.com; expires=" + new Date(Date.now() + 7 * 864e5).toUTCString() + "; path=/";
如何获取cookie?
在JavaScript中,可以使用以下代码获取cookie值:
function getCookie(name) {
let cookies = document.cookie.split(';');
for(let i = 0; i < cookies.length; i++) {
let cookie = cookies[i].trim();
if(cookie.startsWith(name + '=')) {
return cookie.substring(name.length + 1).trim();
}
}
return '';
}
// 使用方法
let username = getCookie('username');
console.log('The value of username is ' + username);
当调用getCookie函数,并传入cookie的名称作为参数时,函数会在当前cookie字符串中搜索该名称,并返回该名称的值。如果没有找到该名称,则函数返回一个空字符串。
删除cookie
在JavaScript中,要删除cookie,可以将cookie的过期日期设置为过去的日期。以下是如何删除当前文档中名为username的cookie的示例代码:
document.cookie = 'username=; expires=' + new Date(0).toUTCString() + '; path=/';
将过期时间设置为0,cookie会立即过期并被删除。需要注意的是,需要使用与创建cookie时相同的路径,以确保能够找到正确的cookie。
注意事项
在使用cookie时,需要注意以下几点:
cookie的大小有限制,不同浏览器有不同的限制。
cookie一般不能跨域名共享。
cookie中存储的数据可以被用户轻松地查看和修改,因此不应该将敏感信息存储在cookie中。
在页面加载时自动发送cookie到服务器,可以增加页面加载的时间。
- 上一篇: js实现深拷贝(JS实现对象完全拷贝)
- 下一篇: js补零函数(JS字符串补零函数实现)
为你推荐
- 2023-07-22js timer(JavaScript倒计时功能实现)
- 2023-08-18js slider(JavaScript幻灯片效果实现)
- 2023-08-03js implements(实现 JavaScript 实例化对象的方法)
- 2023-08-27js的tab栏切换(JS实现Tab栏切换)
- 2023-08-22js 获取url(JavaScript实现获取URL并重写标题)
- 2023-07-01js的eval函数(JavaScript的eval函数改写示例)
- 2023-09-12js 获取当前月份(用JavaScript获取当前月份)
- 2023-07-07js断言(JavaScript断言:保证代码正确性)