Cookie的设置、读取、删除

本文介绍了如何通过JavaScript设置、读取及删除Cookie。详细解释了设置Cookie过期时间的方法,并提供了实用的封装函数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Cookie是页面用来保存信息的,是document的一个属性,我们经常用到,但你真的会用了吗?

由于Cookie“出生”得早,限制了它容量的大小,但它依然很强大,很常用。

设置Cookie很简单:document.cookie='name=val'

Cookie有过期时间,如果不设置过期时间,默认浏览器关闭时Cookie自动删除;

我们可以封装一个函数用来设置Cookie的键-值-过期时间:

-----------------------------------------------------------------------------------------------------------------------------------------

function setCookie( name, value, iDay )   //三个参数分别是:键-值-过期天数

{

var oDate=new Date()     //获取当前时间

oDate.setDate( oDate.getDate() + iDay )   //设置过期时间为当前时间加上过期天数

document.cookie=name + ' = ' +value + ' ;expires = '+ oDate

}

-------------------------------------------------------------------------------------------------------------------------------------------

示例:设置一个用户名为“wang”的cookie,过期时间为14天

setCookie( 'user', 'wang', 14 )


当然,Cookie可以设置也可以读取,我们依然使用一个封装函数:

--------------------------------------------------------------------------------------------------------------------------------------------

function getCookie(name)

{

var ar=document.cookie.split('; ')   //利用分号加空格拆分cookie

for(var i=0;i<arr.length;i++)          

{

var arr2 = arr[i].split( '=' )          //用=号拆分单个的键-值

if(arr2[0] == name) //匹配

{

return arr2[1] //返回匹配的值

}

}

return '' //未匹配则返回空

}

--------------------------------------------------------------------------------------------------------------------------------------------


当然,cookie也是可以删除的:

--------------------------------------------------------------------------------------------------------------------------------------------

function removeCookie( name )

{

setCookie( name,1,-1 )  //需要结合设置cookie的函数重新设置需要删除的cookie的过期时间为-1天,也就是昨天

}

--------------------------------------------------------------------------------------------------------------------------------------------


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值