html 5ローカルストレージ(Web Storage API)
3628 ワード
1.ブラウザは5-10 Mのコンテンツを保存することができ、従来のcookie 4 kよりずっと容量が高く、ドメイン名ごとに5 M
2.localStorage.setItem ([string]key, [string]value);//localStorageオブジェクトのsetItemメソッドでキー/値を格納します.キー/値は文字列のみで、数値やオブジェクトは直接格納できません.
3. var sticky = localStorage.getItem("sticky_0");//getItemメソッド抽出値alert(sticky);
4.APIは広くサポートされており、IE 8でも使用できます.ブラウザがlocalStorageをサポートしているかどうかをテストし、windowグローバルオブジェクトにlocalStorage属性があるかどうかを確認します.
if (window ["localStorage"])
{//code here }
5.数字の記憶、直接localStorage.setItem ("numitems", 1) ; jsはデフォルト1が文字列で、値を取るときにparseInt()またはparseFloat()関数で数値変換されます.
var numItems = parseInt(localStorage.getItem("numitems"));
6.localStorageの配列書き方は、setItemやgetItemを使わずに配列と見なすことができます.
localStorage["key1"] = "value1";
var sticky = localStorage["key1"];
7.localStorageのlengthメソッドとkeyメソッドの使用:
for (var i = 0; i < localStorage.length; i++) { var key = localStorage.key(i); var value = localStorage[key]; alert(value); }
for inループも使用できます
for (var key in localStorage )
{ var value = localStorage[key]; }
8.データの消去clear();
9.各ブラウザのデバッグツールは、resourceでlocalStorageが編集および削除できるのを見ることができます.
10.同じドメイン名のkeyの混同を避けるために、同じクラスのkeyに配列を作成することができます.完全なコードを参照してください.
11.任意のjsオブジェクトと配列を格納し、JSONのstringifyとparseメソッドで文字列とjsオブジェクト/配列の変換を行うことができる
12.localStorageを削除します.remove(key) ,
13.sessionStorageセッションストレージはlocalStorageと同じですが、一時的に使用され、ブラウザを閉じると消去されます.
完全なコード
2.localStorage.setItem ([string]key, [string]value);//localStorageオブジェクトのsetItemメソッドでキー/値を格納します.キー/値は文字列のみで、数値やオブジェクトは直接格納できません.
3. var sticky = localStorage.getItem("sticky_0");//getItemメソッド抽出値alert(sticky);
4.APIは広くサポートされており、IE 8でも使用できます.ブラウザがlocalStorageをサポートしているかどうかをテストし、windowグローバルオブジェクトにlocalStorage属性があるかどうかを確認します.
if (window ["localStorage"])
{//code here }
5.数字の記憶、直接localStorage.setItem ("numitems", 1) ; jsはデフォルト1が文字列で、値を取るときにparseInt()またはparseFloat()関数で数値変換されます.
var numItems = parseInt(localStorage.getItem("numitems"));
6.localStorageの配列書き方は、setItemやgetItemを使わずに配列と見なすことができます.
localStorage["key1"] = "value1";
var sticky = localStorage["key1"];
7.localStorageのlengthメソッドとkeyメソッドの使用:
for (var i = 0; i < localStorage.length; i++) { var key = localStorage.key(i); var value = localStorage[key]; alert(value); }
for inループも使用できます
for (var key in localStorage )
{ var value = localStorage[key]; }
8.データの消去clear();
9.各ブラウザのデバッグツールは、resourceでlocalStorageが編集および削除できるのを見ることができます.
10.同じドメイン名のkeyの混同を避けるために、同じクラスのkeyに配列を作成することができます.完全なコードを参照してください.
11.任意のjsオブジェクトと配列を格納し、JSONのstringifyとparseメソッドで文字列とjsオブジェクト/配列の変換を行うことができる
12.localStorageを削除します.remove(key) ,
13.sessionStorageセッションストレージはlocalStorageと同じですが、一時的に使用され、ブラウザを閉じると消去されます.
完全なコード
window.onload = init;
localStorage.setItem("sticky_0", "Pick up dry cleaning");
localStorage.setItem("sticky_1", "Cancel cable tv, who needs it now?");
function init()
{
var button = document.getElementById("add_button");
button.onclick = createSticky;
var stickiesArray = getStickiesArray();
for (var i = 0; i < stickiesArray.length; i++)
{
var key = stickiesArray(i);
var value = localStorage[key];
addStickyToDom(value);
}
}
function addStickyToDom (value)
{
var stickies = document.getElementById("stickies");
var sticky = document.createElement("li");
var span = document.createElement("span");
span.setAttribute("class", "sticky");
span.innerHTML = value;
sticky.appendChild(span);
stickies.appendChild(sticky);
}
function createSticky()
{
var stickiesArray = getStickiesArray();
var currentDate = new Date();
var time = currentDate.getTime();
var key = "sticky_" + time;
var value = document.getElementById("note_text").value;
localStorage.setItem(key, value);
stickiesArray.push(key);
localStorage.setItem("stickiesArray", JSON.stringify(stickiesArray));
addStickyToDom(value);
}
function getStickiesArray ()
{
var stickiesArray = localStorage.getItem("stickiesArray");
if (!stickiesArray)
{
stickiesArray = [];
localStorage.setItem("stickiesArray", JSON.stringify(stickiesArray));
}
else
{
stickiesArray = JSON.parse(stickiesArray);
}
return stickiesArray;
}
/**
* Created by andrewlee on 13-11-11.
*/
Note to Self