2025年4月19日 星期六 乙巳(蛇)年 正月廿 设为首页 加入收藏
rss
您当前的位置:首页 > 计算机 > 编程开发 > JavaScript

js设置、修改、获取、删除 cookie

时间:09-26来源:作者:点击数:28
CDSY,CDSY.XYZ

.......;

上面这串省略号对于各种吐槽的声音;

因为在百度上看到的关于设置cookie的前几篇文章都是错误的;

里面给出的设置cookie的代码是这样的;

  • function setCookie(name,value){
  • var Days = 30;
  • var exp = new Date();
  • exp.setTime(exp.getTime() + Days*24*60*60*1000);
  • document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();
  • }

这个函数只能设置cookie但是不能修改;

因为没有指定路径;

所以当再次设置同键名的cookie时就无法覆盖了;

正确的设置cookie姿势是这样的;

顺便把读取和删除的也一并送上; 

  • /**
  • * 设置cookie
  • * @param {string} name 键名
  • * @param {string} value 键值
  • * @param {integer} days cookie周期
  • */
  • function setCookie(name,value,days) {
  • if (days) {
  • var date = new Date();
  • date.setTime(date.getTime()+(days*24*60*60*1000));
  • var expires = "; expires="+date.toGMTString();
  • }else{
  • var expires = "";
  • }
  • document.cookie = name+"="+value+expires+"; path=/";
  • }
  • // 获取cookie
  • function getCookie(name) {
  • var nameEQ = name + "=";
  • var ca = document.cookie.split(';');
  • for(var i=0;i < ca.length;i++) {
  • var c = ca[i];
  • while (c.charAt(0)==' ') c = c.substring(1,c.length);
  • if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
  • }
  • return null;
  • }
  • // 删除cookie
  • function deleteCookie(name) {
  • setCookie(name,"",-1);
  • }
CDSY,CDSY.XYZ
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门
本栏推荐