WebStorageで配列やオブジェクトを保存する方法をメモ。
サンプルコード
まずは配列の保存を試してみます。
WebStorageに保存すると文字列に変換されてしまうため、データ保存前にはJSON.stringify()を、保存したデータを取得する際にJSON.parse()を使います。
var keyname = 'arrayData'; // データを取得して表示 var storageData = JSON.parse(localStorage.getItem(keyname)); if(storageData !== null) { console.log(storageData); console.log(storageData[0]); } // データの保存 var arr = ['A', 'B', 'C']; localStorage.setItem(keyname, JSON.stringify(arr));
初回アクセス時はconsoleに何も表示されませんが、リロードして再度アクセスすると、初回時に保存したデータ内容でconsoleを表示することができました。
配列を保存するデモページ
次にオブジェクトの保存ですが、配列の時と同じ形で保存、表示ができます。
var keyname = 'arrayData2'; // データを取得して表示 var storageData = JSON.parse(localStorage.getItem(keyname)); if(storageData !== null) { console.log(storageData); console.log(storageData['name']); } // データの保存 var arr = { 'name': 'suzuki', 'age': 18 }; localStorage.setItem(keyname, JSON.stringify(arr));
コメントが承認されるまで時間がかかります。