HTML5本地存储之Web Storage篇
2019獨(dú)角獸企業(yè)重金招聘Python工程師標(biāo)準(zhǔn)>>>
Web Storage是HTML5引入的一個非常重要的功能,在前端開發(fā)中經(jīng)常用到,可以在客戶端本地存儲數(shù)據(jù),類似HTML4的cookie,但可實(shí)現(xiàn)功能要比cookie強(qiáng)大的多, cookie大小被限制在4KB , Web Storage官方建議為每個網(wǎng)站5MB 。Web Storage又分為兩種:- ?sessionStorage
- ?localStorage
從字面意思就可以很清楚的看出來,sessionStorage將數(shù)據(jù)保存在session中,瀏覽器關(guān)閉也就沒了;而localStorage則一直將數(shù)據(jù)保存在客戶端本地,除非主動刪除數(shù)據(jù),否則數(shù)據(jù)是永遠(yuǎn)不會過期的;不管是sessionStorage,還是localStorage,可使用的API都相同,常用的有如下幾個方法:
兩個都有屬性 length 表示key 的個數(shù),也即 key 長度:
var keyLength1 =?localStorage.length; ?var keyLength2 ?=?sessionStorage.length;?
如上,key 和 value 都必須為字符串,換言之,web Storage的API只能操作字符串。
web storage的瀏覽器支持情況的判斷:
在使用web storage時首先判斷是否支持該功能,有些版本瀏覽器不支持(如IE7及之前的版本不支持),只有支持才可以使用,判斷方法如下:
[javascript]? view plain copy接下來,我們 通過Web Storage開發(fā)一個簡單的通訊錄小程序,以演示相關(guān)API的使用方法 ;我們要實(shí)現(xiàn)如下功能:
1,錄入聯(lián)系人,聯(lián)系人有姓名、手機(jī)號碼2個字段,以手機(jī)號作為key存入localStorage;
2,根據(jù)手機(jī)號碼,查找機(jī)主;
3,列出當(dāng)前已保存的所有聯(lián)系人信息;
首先,準(zhǔn)備一個簡單的HTML頁面,如下:
[html]? view plain copy要實(shí)現(xiàn)查找機(jī)主,則實(shí)現(xiàn)如下JS方法:
[javascript]? view plain copy問題:如上的演示,都只有2個字段,姓名和手機(jī)號碼,如果要存入更為豐富的聯(lián)系人信息,比如公司名稱、家庭地址等,如何實(shí)現(xiàn)呢?Web Storage不是只能處理字符串嗎?此時,可以利用JSON的stringify()方法,將復(fù)雜對象轉(zhuǎn)變成字符串,存入Web Storage中;當(dāng)從Web Storage中讀取時,可以通過JSON的parse()方法再轉(zhuǎn)換成JSON對象;
如下簡單演示增加了公司屬性的聯(lián)系人保存JS代碼:
[javascript]? view plain copy轉(zhuǎn)載于:https://my.oschina.net/u/2249714/blog/646706
總結(jié)
以上是生活随笔為你收集整理的HTML5本地存储之Web Storage篇的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 当网页太多时,用锚点 以及超链接的使用
- 下一篇: WEB请求处理六:浏览器HTTP协议漫谈