JavaScript Cookies
Cookies let you store user information in web pages.
Cookies let you store user information in web pages.
Share
What are Cookies?
Cookies are data, stored in small text files, on your computer.
When a web server has sent a web page to a browser, the connection is shut down, and the server forgets everything about the user.
Cookies were invented to solve the problem "how to remember information about the user":
- When a user visits a web page, his/her name can be stored in a cookie.
- Next time the user visits the page, the cookie "remembers" his/her name.
Cookies are saved in name-value pairs like:
Example
Example Code
javascriptusername = John DoeWhen a browser requests a web page from a server, cookies belonging to the page are added to the request. This way the server gets the necessary data to "remember" information about users.
Create a Cookie with JavaScript
JavaScript can create, read, and delete cookies with the document.cookie property.
With JavaScript, a cookie can be created like this:
Example
Example Code
javascriptdocument.cookie = "username=John Doe";You can also add an expiry date (in UTC time). By default, the cookie is deleted when the browser is closed:
Example
Example Code
javascriptdocument.cookie = "username=John Doe; expires=Thu, 18 Dec 2013 12:00:00 UTC";With a path parameter, you can tell the browser what path the cookie belongs to. By default, the cookie belongs to the current page.
Example
Example Code
javascriptdocument.cookie = "username=John Doe; expires=Thu, 18 Dec 2013 12:00:00 UTC; path=/";Read a Cookie with JavaScript
With JavaScript, cookies can be read like this:
Example
Example Code
javascriptlet x = document.cookie;Change a Cookie with JavaScript
With JavaScript, you can change a cookie the same way as you create it:
Example
Example Code
javascriptdocument.cookie = "username=John Smith; expires=Thu, 18 Dec 2013 12:00:00 UTC; path=/";The old cookie is overwritten.
Delete a Cookie with JavaScript
Deleting a cookie is very simple.
You don't have to specify a cookie value when you delete a cookie.
Just set the expires parameter to a past date:
Example
Example Code
javascriptdocument.cookie = "username=; expires=Thu, 01
Jan 1970 00:00:00 UTC; path=/;";The Cookie String
The document.cookie property looks like a normal text string. But it is not.
Even if you write a whole cookie string to document.cookie, when you read it out again, you can only see the name-value pair of it.
If you set a new cookie, older cookies are not overwritten. The new cookie is added to document.cookie, so if you read document.cookie again you will get something like:
cookie1 = value; cookie2 = value;
Display All Cookies Create Cookie 1 Create Cookie 2 Delete Cookie 1 Delete Cookie 2
If you want to find the value of one specified cookie, you must write a JavaScript function that searches for the cookie value in the cookie string.
JavaScript Cookie Example
In the example to follow, we will create a cookie that stores the name of a visitor.
The first time a visitor arrives to the web page, he/she will be asked to fill in his/her name. The name is then stored in a cookie.
The next time the visitor arrives at the same page, he/she will get a welcome message.
For the example we will create 3 JavaScript functions:
1. A function to set a cookie value 2. A function to get a cookie value 3. A function to check a cookie value
A Function to Set a Cookie
First, we create a function that stores the name of the visitor in a cookie variable:
Example
Example Code
javascriptfunction setCookie(cname, cvalue, exdays) {
const d = new Date();
d.setTime(d.getTime() + (exdays*24*60*60*1000));
let expires = "expires="+ d.toUTCString();
document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";
}Example explained:
The parameters of the function above are the name of the cookie (cname), the value of the cookie (cvalue), and the number of days until the cookie should expire (exdays).
The function sets a cookie by adding together the cookiename, the cookie value, and the expires string.
A Function to Get a Cookie
Then, we create a function that returns the value of a specified cookie:
Example
```javascript function getCookie(cname) {
let name = cname + "=";
let decodedCookie = decodeURIComponent(document.cookie);
let ca = decodedCookie.split(';');
for(let i = 0; i
Interactive Code Examples
Example 2
javascriptdocument.cookie = "username=John Doe";Example 3
javascriptdocument.cookie = "username=John Doe; expires=Thu, 18 Dec 2013 12:00:00 UTC";Example 4
javascriptdocument.cookie = "username=John Doe; expires=Thu, 18 Dec 2013 12:00:00 UTC; path=/";Example 5
javascriptlet x = document.cookie;Example 6
javascriptdocument.cookie = "username=John Smith; expires=Thu, 18 Dec 2013 12:00:00 UTC; path=/";