本文实例讲述了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-insensitivevar 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 insensitivevar 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-insensitivevar 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-insensitivevar 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)
") || "";};希望本文所述对大家的javascript程序设计有所帮助。