本地儲存由來的背景
由於HTML4時代Cookie的大小、格式、儲存資料格式等限制,網(wǎng)站應用如果想在瀏覽器端儲存使用者的部分信息,那麼只能藉助於Cookie。但是Cookie的這些限制,也就導致了Cookie只能儲存一些ID之類的識別碼等簡單的資料。
以下是Cookie的限制:
大多數(shù)瀏覽器支援最大為 4096 位元組的?Cookie。
瀏覽器也會限制網(wǎng)站可以在使用者電腦上儲存的?Cookie?的數(shù)量。大多數(shù)瀏覽器只允許每個網(wǎng)站儲存 20 個Cookie;如果嘗試儲存更多?Cookie,則最舊的?Cookie?便會被丟棄。
有些瀏覽器也會對它們將接受的來自所有網(wǎng)站的?Cookie?總數(shù)作出絕對限制,通常為 300 個。
Cookie預設都會隨著Http請求發(fā)送到後臺伺服器,但並不是所有請求都需要Cookie的,例如:js、css、圖片等請求則不需要Cookie。
為了破解Cookie的一系列限制,HTML5透過JS的新的API就能直接儲存大量的資料到客戶端瀏覽器,而且支援複雜的本地資料庫,讓JS更有效率。 HTML5支援兩種的WebStorage:
永久性的本機儲存(localStorage)
會話層級的本機儲存(sessionStorage)
#偵測是否支援localStorage:######
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文網(wǎng)</title> </head> <body> <div id="result"></div> <script> if(window.localStorage){ alert("瀏覽支持localStorage") }else{ alert("瀏覽暫不支持localStorage") } //或者 if(typeof window.localStorage == 'undefined'){ alert("瀏覽暫不支持localStorage") } </script> </body> </html>