Cookies en JavaScript
Con estas tres funciones, las cookies en JavaScript están chupadas. A tener en cuenta:
- Las cookies sin fecha de caducidad se borran al cerrar el navegador.
- Si no especificamos una ruta se utiliza la del documento donde ejecutamos el script (no la ruta del script
en sí ni la raíz del sitio).
function escribirCookie(nombre, valor, duracion, ruta, dominio, segura){
if(duracion){
var expires = new Date();
expires.setUTCMilliseconds(expires.getUTCMilliseconds() + 1000*duracion);
}
document.cookie = escape(nombre) + "=" + (valor? escape(valor) : "") +
(expires ? "; expires=" + expires.toGMTString() : "") +
(ruta ? "; path=" + escape(ruta) : "") +
(dominio ? "; domain=" + escape(dominio) : "") +
(segura ? "; secure" : "");
}
function borrarCookie(nombre){
escribirCookie(nombre, "", -86400*365*10);
}
function leerCookie(nombre){
var re = new RegExp("^(" + escape(nombre) + ")=(.*)$", "i");
var c = document.cookie.split(/;\s*/);
for(var i in c){
if(re.test(c[i])){
return unescape(re.exec(c[i])[2]);
}
}
return null;
}
Historial
- v2010-03-26
- Comentarios mejorados.
- v2009-01-16
- Eliminar el
eval() que puse cuando era joven e inexperto.
- Dar una manita de pintura.
- v2005-02-27 / v2005-03-02
- Primera versión.