Js中的cookie

cookie基础

 什么是cookie

页面用来保存信息:比如登录、记住用户名、字符串

缓存与cookie的区别

缓存是靠客户端的设置来存储的,cookie是靠JS来存储的

Cookie的特性

  •      同一个网站中所有的页面共享一个cookie
  •      数量、大小有限,一般大概就是几十个,大小以K为单位
  •      具有过期事件

JS中使用cookie

          Document.cookie

使用cookie

声明cookie

Ø  格式:名字=值

Ø  不会覆盖

1 <script>
2 document.cookie="user=blue";
3 document.cookie="pass=123";
4 alert(document.cookie);
5 </script>

这里的cookie是可以重复赋值的,也就是可以赋值两次,区别于一般的变量,弹出来的时候显示的是赋值的两个值

Ø  给cookie设置过期时间

过期时间:expires=时间  》日期对象的使用

1 <script>
2 document.cookie="user=blue" expires=10;
3 document.cookie="pass=123";
4 alert(document.cookie);
5 </script>

添加的过期时间为10天后, 这里以天为单位,运用expires=时间来设定过期的时间

Ø  封装cookie

1 <script>
2 function setCookie(name, value, iDay)
3 var oDate=new Date();
4 oDate.setDate(oDate.getDate()+iDay);
5 document.cookie=name+'='+value+';expires='+oDate;
6 setCookie('username','abc',30);
7 setCookie('username2','123456',30);
8 alert(document.cookie);
9 </script>

使用的是运用get封装,这里面有三个值 name value iday名字,密码和过期时间iDay

读取cookie

读取cookie, 主要运用字符串分割的原理,把cookie的三个元素分割出来

 1 function getCookie(name)
 2 {
 3     var arr=documennt.cookie.split('; ');
 4     var i=0;
 5     for(i=0;i<arr.length;i+=)
 6     {
 7         var arr2=arr[i].split('=');
 8         if(arr2[0]==name)
 9         {
10             return arr2[1];
11             }
12         }
13         return ' ';
14     }

删除cookie

1 function removeCookie(name)
2 {
3     setCookie(name,'1',-1);
4 
5     }

删除cookie的原理就是把它的日期设置为已经过期了的,这样就自动删除了,这里把它的过期日期设置为昨天,就相当于把它删除了。

cookie的使用

cookie纪录上一次div的位置

      鼠标抬起——纪录位置

      Window.onload——读取位置

使用cookie纪录上一次登录时的用户名

     提交时——纪录用户名

      Window.onload——读取用户名

原文地址:https://www.cnblogs.com/chongzixing/p/7058286.html