首页 > 编程 > JavaScript > 正文

JavaScript操作Cookie方法实例分析

2019-11-20 12:24:09
字体:
来源:转载
供稿:网友

本文实例讲述了JavaScript操作Cookie方法。分享给大家供大家参考。具体如下:

// My methods for setting, reading and deleting cookies.// I have methods to check for the existence of cookie names or values, // to retrieve by name or value, and to create a formatted string of // all the cookies.// My site: andrew.dx.amvar SetCookie = function (name, value, expires, path, domain, secure) {  // The caller should Trim the name/value pair, if required.  // Sets the name/value pair (encoded); 'expires' is the no. of days.  var expires_date;  if (expires) {    expires_date = new Date();    expires_date.setDate(expires_date.getDate() + expires);  }  document.cookie = encodeURIComponent(name) + "=" +     encodeURIComponent(value) +    ( ( expires ) ? ";expires=" + expires_date.toUTCString() : "" ) +    ( ( path ) ? ";path=" + path : "" ) +    ( ( domain ) ? ";domain=" + domain : "" ) +    ( ( secure ) ? ";secure" : "" );};var DeleteCookie = function (name, path, domain) {  // The caller should Trim the name/value pair.  // Encodes the name before deleting.  document.cookie = encodeURIComponent(name) + "=" +     ( ( path ) ? ";path=" + path : "") + ( ( domain ) ? ";domain=" +       domain : "" ) + ";expires=Fri, 01-Jan-2010 00:00:01 UTC";};var DelAllCookies = function () {  var currDate = new Date(), i, theCookie = document.cookie.split(";");  currDate = currDate.toUTCString();  i = theCookie.length;  while ( i-- ) {    document.cookie = theCookie[i] + "; expires =" + currDate;  }};var EscapeReg = function (str) {  // Helper fn: Escapes characters for use in a regular expression.  return str.replace(/[-[/]{}()*+?.,//^$|#/s]/g, "//$&");};// The following four functions do not Trim the name or value // - the calling fns should do this.var CNameExists = function (cookie_name) { // case-insensitive  var testName, myReg;  if (document.cookie.length == 0) return false;  testName = EscapeReg(cookie_name);  myReg = new RegExp('(^|;) ?' + testName + '=([^;]*)(;|$)','i');  return myReg.test(decodeURIComponent(document.cookie));};var CValueExists = function (cookie_value)  { // case insensitive  var testName, myReg;  if (document.cookie.length == 0) return false;   testName = EscapeReg(cookie_value);  myReg = new RegExp('(=)' + testName + '(;|$)','i');  return myReg.test(decodeURIComponent(document.cookie));};var CNameGet = function (cookie_value) { // case-insensitive  var testName, myReg, results;  if (document.cookie.length == 0) return '';  testName = EscapeReg(cookie_value);  myReg = new RegExp('(^|;) ?([^=]*)=' + testName + '(;|$)','i');  results = decodeURIComponent(document.cookie).match(myReg);  return ( results ) ? results[2] : '';};var CValueGet = function (cookie_name) { // case-insensitive  var testName, myReg, results;  if (document.cookie.length == 0) return '';  testName = EscapeReg(cookie_name);  myReg = new RegExp('(^|;) ?' + testName + '=([^;]*)(;|$)','i');  results = decodeURIComponent(document.cookie).match(myReg);  return ( results ) ? results[2] : '';};var CookieStr = function () {  // Returns a string (with line breaks) which could be   // placed in, for example, a textarea.  return decodeURIComponent(document.cookie).    replace(/([^=;]+)=([^;]*)[;/s]*/g,'$1 ($2)/n') || '';};

希望本文所述对大家的javascript程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表