これまたよく使うのでメモ。
WebkitITPはスルー
//read window.cookieread = function(c) { var ret = ''; var cn = c + '='; var allc = document.cookie; var pos = allc.indexOf(cn); if(pos != -1) { var si = pos + cn.length; var ei = allc.indexOf(';', si); if(ei == -1) { ei = allc.length; } ret = decodeURIComponent(allc.substring(si, ei)); } return ret; }; //write window.cookiewrite = function(cn, val, exp, dom) { var value = cn + '=' + encodeURIComponent(val) + '; domain=' + dom + '; path=/;'; if (exp) { var d = new Date(); d.setDate(d.getDate() + exp); var expires = d.toUTCString(); value = value + ' expires=' + expires; } document.cookie = value; };
使い方
//クッキー名, 値, 有効日数(0ならセッション), 有効ドメイン cookiewrite('hoge', 'foobar', 30, '.kwonline.org'); var hoge = cookieread('hoge'); //foobar
これまたES5の構文だ。