软件教程

JavaScript中Cookie的简单使用

来源: 本站    类别: 软件教程    日期: 2016/12/2

 通常情况下,网站设计者是借助后台数据库来实现以上目的的。当用户第一次访问该网站时,网站在数据库中建立一个新的ID,并把ID通过Cookie传送给用户。用户再次来访时,网站把该用户ID对应的计数器加1,得到用户的来访次数或判断用户是新用户还是老用户。

服务器可以利用Cookies包含信息的任意性来筛选并经常性维护这些信息,以判断在HTTP传输中的状态。Cookies最典型的应用是判定注册用户是否已经登录网站,用户可能会得到提示,是否在下一次进入此网站时保留用户信息以便简化登录手续,这些都是Cookies的功用。另一个重要应用场合是“购物车”之类处理。用户可能会在一段时间内在同一家网站的不同页面中选择不同的商品,这些信息都会写入Cookies,以便在最后付款时提取信息,

  1. //创建一个Cookie 
  2. function createCookie(userName,password){ 
  3.   
  4.     var date=new Date(); 
  5.     date.setTime(date.getTime()+60*1000*60*24);  //保存一天时间 
  6.     document.cookie="userName="+escape(userName)+";expires="+date.toUTCString(); 
  7. //escape函数把String作了编码,setTime就是Cookie的存活期 
  8.     document.cookie="password="+escape(password)+";expires="+date.toUTCString(); 
  9.     alert(document.cookie); 
  10. //获得Cookie数据 
  11. function getCookie(value){ 
  12.      var cookieString = document.cookie; 
  13.         var start = cookieString.indexOf(value+"=");   //找出value的位置 
  14.         if(start==-1) 
  15.             return null
  16.         start+=value.length+1;                          //value的长度+1,也就是=后面的位置 
  17.         var end=cookieString.indexOf(";",start);       //valuer的长度+1找;的位置 
  18.         if(end==-1)                                    //也就是说,只有一个Cookie所以没有; 
  19.             return cookieString.substring(start); 
  20.          return cookieString.substring(start, end); 
  21.   
  22. //删除Cookie 
  23. function delCookie(){ 
  24.   
  25.     var date=new Date(); 
  26.     var user=getCookie("userName"); 
  27.     var pwd=getCookie("password"); 
  28.     date.setTime(date.getTime()-1); 
  29. //把当前时间-1毫秒,与现在系统的时间一减,成了负值,那么这个Cookie存放在系统里就过期,就会被销毁 
  30.     document.cookie="userName="+escape(user)+";"+"expires="+date.toUTCString(); 
  31.     document.cookie="password="+escape(pwd)+";"+"expires="+date.toUTCString(); 

相关文章


Copyright © 2004 - 2017 CNHWW Inc. All Rights Reserved
公司地址:石家庄市西二环328号市政大院2楼 邮政编码:050051
服务电话:0311-85315152 13931185013 在线客服QQ:81447932 / 81447933 邮箱: cnhww@163.com