Cookies
Adding and Setting Cookies
The following variables set up the below example:
var COOKIE_NAME = "Example Cookie"; /* The cookie's name. */ var COOKIE_VALUE = "Hello, world!"; /* The cookie's value. */ var COOKIE_PATH = "/foo/bar"; /* The cookie's path. */ var COOKIE_EXPIRES; /* The cookie's expiration date (config'd below). */ /* Set the cookie expiration to 1 minute in future (60000ms = 1 minute). */ COOKIE_EXPIRES = (new Date(Date.now() + 60000)).toUTCString();
document.cookie += COOKIE_NAME + "=" + COOKIE_VALUE + "; expires=" + COOKIE_EXPIRES + "; path=" + COOKIE_PATH;
Reading cookies
var name = name + "=", cookie_array = document.cookie.split(';'), cookie_value; for(var i=0;i<cookie_array.length;i++) { var cookie=cookie_array[i]; while(cookie.charAt(0)==' ') cookie = cookie.substring(1,cookie.length); if(cookie.indexOf(name)==0) cookie_value = cookie.substring(name.length,cookie.length); }
This will set cookie_value
to the value of the cookie, if it exists. If the cookie is not set, it will set cookie_value
to null
Removing cookies
var expiry = new Date(); expiry.setTime(expiry.getTime() - 3600); document.cookie = name + "=; expires=" + expiry.toGMTString() + "; path=/"
This will remove the cookie with a given name
.
Test if cookies are enabled
If you want to make sure cookies are enabled before using them, you can use navigator.cookieEnabled
:
if (navigator.cookieEnabled === false) { alert("Error: cookies not enabled!"); }
Note that on older browsers navigator.cookieEnabled
may not exist and be undefined. In those cases you won't detect that cookies are not enabled.