menu
menu

キーワード検索

 

前月(11月)の人気記事トップ10

  1. ( 1 - ) 【CSS】CSSだけでドロップダウンメニュー
  2. ( 2 - ) 【Mac】Macのユーザー名とアカウント名を変更する
  3. ( 3 - ) 【jQuery】jQueryでドロップダウンメニュー
  4. ( 4 - ) 【CSS】スマホ対応CSSだけでドロップダウンメニュー
  5. ( 6 ↑) 【iPhone・iPad】iPhoneのメモリを簡単に解放する方法
  6. ( 5 ↓) 【iPhone・iPad】投稿の準備中にエラーが起きました。後でやり直してください。
  7. ( 9 ↑) 【jQuery】入門2. jQueryをHTMLに組み込む
  8. ( 8 - ) 【CSS】レスポンシブデザインのブレークポイントは⁉
  9. (10 ↑) 【Mac】iMovieの保存場所を変更する
  10. ( - ↑) 【PHP】PHPでシンプルなメールフォーム
このエントリーをはてなブックマークに追加

【JavaScript】ローカルストレージとクッキー

【JavaScript】ローカルストレージとクッキー

こんにちは(・∀・)

今回はJavaScriptのローカルストレージとクッキーのサンプルをご紹介します。

ローカルストレージとクッキー

クッキーに代わり最近主流となりつつあるローカルストレージですが、未だIEでは未対応です。

今回たまたま別々の案件でローカルストレージとクッキーを使用する機会がありましたのでその覚書をかねて投稿します。

  1. ローカルストレージ
  2. クッキー
  3. ローカルストレージとクッキーを両方使用する場合
ローカルストレージ

ローカルストレージのサンプルです。

JavaScript

_name = "sample";
function  samplefunc(obj){
localStorage.setItem(_name,obj);
window.location.reload(true);
}
var _value = localStorage.getItem(_name);
if(_value == 0){
_value = 0;
}else if(_value == 1){
_value = 1;
}else{
_value = 0;
}
クッキー

クッキーのサンプルです。

JavaScript

_name = "sample";
function  samplefunc(obj){
document.cookie = _name+"="+obj+"; expires=Fri, 31-Dec-2030 23:59:59 GMT; path=/;";
window.location.reload(true);
}
Cookie = document.cookie+";";
_set1 = Cookie.indexOf(_name);
if(_set1 != -1){
_set2 = Cookie.indexOf("=",_set1);
_set3 = Cookie.indexOf(";",_set2);
_value = Cookie.substring(_set2+1, _set3);
}else{
_value = 0;
}
ローカルストレージとクッキーを両方使用する場合

ローカルストレージとクッキーを同時に使用することはまずないと思いますが、一応両方使用する場合のサンプルです。

JavaScript

document.write('<!--[if !IE]><!-->');
/*ローカルストレージ*/
_name = "sample";
function  samplefunc(obj){
localStorage.setItem(_name,obj);
window.location.reload(true);
}
var _value = localStorage.getItem(_name);
if(_value == 0){
_value = 0;
}else if(_value == 1){
_value = 1;
}else{
_value = 0;
}
document.write('<!--<![endif]-->');

document.write('<!--[if IE]>');
/*クッキー*/
_name = "sample";
function  samplefunc(obj){
document.cookie = _name+"="+obj+"; expires=Fri, 31-Dec-2030 23:59:59 GMT; path=/;";
window.location.reload(true);
}
Cookie = document.cookie+";";
_set1 = Cookie.indexOf(_name);
if(_set1 != -1){
_set2 = Cookie.indexOf("=",_set1);
_set3 = Cookie.indexOf(";",_set2);
_value = Cookie.substring(_set2+1, _set3);
}else{
_value = 0;
}
document.write('<![endif]-->');

条件分岐でIEとそれ以外で振り分けているだけです。

ローカルストレージとクッキーを同時に使用する場合、ローカルストレージ、クッキーの順に書かないと正しく動作しません。


こうやって並べて書くとローカルストレージの書き方はクッキーより簡単になったのがわかりますね。

  • cookie JavaScript
このエントリーをはてなブックマークに追加