一、Html5 之前的本地存儲(chǔ)
1、Cookie
缺點(diǎn):
1. 大小限制,4KB.
2. 附加在每次請(qǐng)求中,增加流量。
3. 在http中是明文傳輸,安全性比較低
2、Flash Local Shared Objects
2002年Flash推出的可以在Flash對(duì)象中存儲(chǔ)100K的數(shù)據(jù)
缺點(diǎn):
需要Flash的支持,存在技術(shù)局限性
3、Gears
2007年Google啟動(dòng)的項(xiàng)目,通過(guò)插件技術(shù)增強(qiáng)瀏覽器的。Gears提供Api訪問(wèn)基于Sqlite的嵌入式SQL數(shù)據(jù)庫(kù)。
缺點(diǎn):
用戶必須去安裝Gears插件,不可控。
二、WAP時(shí)代的本地存儲(chǔ)
1、不支持任何本地存儲(chǔ)。
三、Html5 現(xiàn)在支持的本地存儲(chǔ)及使用
1、 什么是HTML5本地存儲(chǔ)?
1. 一種讓網(wǎng)頁(yè)可以把鍵值對(duì)存儲(chǔ)在用戶瀏覽器客戶端的方法。像Cookie一樣,這些數(shù)據(jù)不會(huì)因?yàn)槟愦蜷_(kāi)新網(wǎng)站,刷新頁(yè)面,乃至關(guān)閉你的瀏覽器而消失。(只能存儲(chǔ)字符串)。
2.而與Cookie不同的時(shí),這些數(shù)據(jù)不會(huì)每次隨著HTTP請(qǐng)求被發(fā)送到服務(wù)器端
3. HTML5規(guī)范的一部分,這一接口會(huì)被瀏覽器原生支持,不用依賴任何第三方插件。只要瀏覽器支持html5就能支持
2、手機(jī)對(duì)本地存儲(chǔ)的支持情況
Iphone Android
2.0+ 2.0+
3、判斷瀏覽器是否支持 本地存儲(chǔ)
function isSupportStorage(){
return "localStorage" in window;
}
LocalStorage的用法:
本地存儲(chǔ)不會(huì)過(guò)期的數(shù)據(jù)。
一、W3C定義的Storage的接口
二、localStorage的操作
1. 存儲(chǔ)數(shù)據(jù)
2. 讀取數(shù)據(jù)
3. 列出所有緩存數(shù)據(jù)
4. 刪除數(shù)據(jù)
5. 保存JSON對(duì)象
三、使用場(chǎng)景
1. 存儲(chǔ)一些很少變動(dòng)的數(shù)據(jù),比如用戶的昵稱。
2. 存儲(chǔ)一些用戶編輯很長(zhǎng)時(shí)間的數(shù)據(jù),比如郵件、文章的草稿
四、不同于服務(wù)器存儲(chǔ)
數(shù)據(jù)可能隨時(shí)丟掉。
當(dāng)服務(wù)器緩存使用