- function setCookie(name, value, expires, domain, path, secure) {
- var cookie = ''; //クッキー文字列を格納するための変数
- //「名前=値」を追加。値はエンコード処理
- cookie += name + '=' + encodeURIComponent(value);
- //expires が空でない場合
- if(expires){
- //変数 exps は有効期限を格納する変数
- var exps = new Date();
- exps.setDate(exps.getDate() + expires);
- //「expires=有効期限」を追加。
- cookie += '; expires=' + exps.toGMTString();
- }
- //domain, path, secure が空でない場合、それぞれを設定して追加
- if(domain) { cookie += '; domain' + domain;}
- if(path) { cookie += '; path=' + path; }
- if(secure) { cookie += '; secure'; }
- //cookieプロパティにクッキー文字列を設定
- document.cookie = cookie;
- }
-
- function getCookie(name) {
- //取得したクッキー文字列を「;」で分割
- var cookies = document.cookie.split(';');
- //個々のクッキーの情報(名前=値)を処理
- for(var i = 0; i < cookies.length; i ++) {
- //個々のクッキーの情報を「=」で分割
- var key_value = cookies[i].split('=');
- var key = $.trim(key_value[0]); //前後の空白を削除
- var value = $.trim(key_value[1]); //前後の空白を削除
- //名前の部分(key_value[0])が name と等しい場合、その値をデコードして返す
- if(key == name) { return decodeURIComponent(value); }
- }
- //該当する名前のクッキーがない場合は null を返す
- return null;
- }
-
- setCookie("test1", "abc", 1);
- setCookie("test2", "def", 1, "");
- setCookie("test3", "ghi", 1, "", "/pr");
-
- document.cookie = 'test4=123; path=/pr/';
-
- console.log(getCookie("test1"));
- console.log(getCookie("test2"));
- console.log(getCookie("test3"));
- console.log(getCookie("test4"));