Crear, leer y eliminar cookies con javascript

¿Que son las cookies en javascript?

Básicamente las cookies de JavaScript son datos de los usuarios que se almacenan en archivos de texto pequeños en la computadora con un formato de pares key-value.

Crear una cookie con javascript

Para facilitar el trabajo con cookies utilizaremos la siguiente función:

function setCookie(name, value, days) {
  var d = new Date();
  d.setTime(d.getTime() + (exdays*24*60*60*1000));
  var expires = "expires="+ d.toUTCString();
  document.cookie = name + "=" + value + ";" + expires + ";
}

Nuestra función recibe tres parámetros.-
  • name: nombre de la cookie (key).
  • value: valor a almacenar en la cookie.
  • days: tiempo en días en el que estará vigente la cookie a partir de su creación.
Nota: En este ultimo punto para ejemplo del articulo usamos el tiempo de vigencia de la cookie en días, pero la vigencia puede ir desde segundos en adelante.
La linea de código que se encarga de crear la cookie es la siguiente.-
document.cookie = name + "=" + value + ";" + expires + ";

Leer un cookie con javascript

Para leer la cookie utilizamos otra función, la cual solo recibe como parámetro el nombre que le asignamos al momento de crearla.-

function getCookie(cname) {
  var name = cname + "=";
  var decodedCookie = decodeURIComponent(document.cookie);
  var ca = decodedCookie.split(';');
  for(var i = 0; i < ca.length; i++) {
    var c = ca[i];
    while (c.charAt(0) == ' ') {
      c = c.substring(1);
    }
    if (c.indexOf(name) == 0) {
      return c.substring(name.length, c.length);
    }
  }
  return "";
}

En caso que la cookie no exista, solo regresará una cadena vacía, pero lo ideal es crear otra función para validar que la cookie exista.

Comprobar si existe una cookie en javascript

Por último utilizaremos una función en la cual hacemos uso de la función  getCookie() para validar si existe o no una cookie.-

function checkCookie (cname) { 
   var value = getCookie(cname); 
   if (value != "") { 
    return true;
   } else { 
     return false; 
   } 
}

El único parámetro que recibe es el nombre de la cookie a validar, si esta existe nos devolvera un valor true.

Conclusiones

Se tratan de funciones básicas para la manipulación de cookies, pero estas pueden ser modificadas a nuestra conveniencia según nuestros objetivos.

Que tengan feliz código.

Entradas más populares de este blog

Un vistazo a Angular

Introducción a los conjuntos (set) con javascript