佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > html5 localStorage本地存儲_動力節(jié)點Java學院整理

html5 localStorage本地存儲_動力節(jié)點Java學院整理

熱門標簽:太平洋壽險電話營銷 科大訊飛語音識別系統(tǒng) 百度競價排名 網(wǎng)站排名優(yōu)化 網(wǎng)站文章發(fā)布 團購網(wǎng)站 國美全國運營中心 企業(yè)做大做強

localStorage 即本地存儲,可用于長久保存整個網(wǎng)站的數(shù)據(jù),保存的數(shù)據(jù)沒有過期時間,直到手動去除。

在JavaScript語言中可通過 window.localStorage 或 localStorage 調(diào)用此對象。

特點

1) 同源策略限制。若想在不同頁面之間對同一個localStorage進行操作,這些頁面必須在同一協(xié)議、同一主機名和同一端口下。(IE8和9存儲數(shù)據(jù)僅基于同一主機名,忽略協(xié)議(HTTP和HTTPS)和端口號的要求)

2) 只在本地存儲。localStorage的數(shù)據(jù)不會跟隨HTTP請求一起發(fā)送到服務器,只會在本地生效。

3) 永久保存。保存的數(shù)據(jù)沒有過期時間,直到手動去除。

4) 存儲方式。localStorage的存儲方式采用key、value的方式。value的值必須為字符串類型(傳入非字符串,也會在存儲時轉(zhuǎn)換為字符串。true值會轉(zhuǎn)換為"true")。

5) 存儲上限限制:不同的瀏覽器存儲的上限也不一樣,但大多數(shù)瀏覽器把上限限制在5MB以下。

6) 同瀏覽器共享。localStorage的數(shù)據(jù)可以在同一個瀏覽器的不同標簽頁的同源頁面之間共享。

瀏覽器最小版本支持

支持localStorage瀏覽器的最小版本:IE8、Chrome 5。

適用場景

localStorage 比較適用2個地方:

1) 數(shù)據(jù)比較大的臨時保存方案。如在線編輯文章時的自動保存。

2) 多頁面訪問共同數(shù)據(jù)。sessionStorage只適用于同一個標簽頁,localStorage相比而言可以在多個標簽頁中共享數(shù)據(jù)。

屬性

readonly int localStorage.length :返回一個整數(shù),表示存儲在 localStorage 對象中的數(shù)據(jù)項(鍵值對)數(shù)量。

方法

string localStorage.key(int index) :返回當前 localStorage 對象的第index序號的key名稱。若沒有返回null。

string localStorage.getItem(string key) :返回鍵名(key)對應的值(value)。若沒有返回null。

void localStorage.setItem(string key, string value) :該方法接受一個鍵名(key)和值(value)作為參數(shù),將鍵值對添加到存儲中;如果鍵名存在,則更新其對應的值。

void localStorage.removeItem(string key) :將指定的鍵名(key)從 localStorage 對象中移除。

void localStorage.clear() :清除 localStorage 對象所有的項。

事件

storage :當對 localStorage 進行更改時,觸發(fā)此事件。

在IE 11和Chrome中對此事件有不同的觸發(fā)機制:

1) 當前頁面是否觸發(fā):當前頁面進行l(wèi)ocalStorage 操作時,IE 11是當前頁面也觸發(fā)此事件,Chrome 是當前頁面不觸發(fā)此事件。

2) 對localStorage進行重復操作:如存入重復的數(shù)據(jù),IE 11是觸發(fā)此事件,Chrome 是不觸發(fā)此事件。

存儲數(shù)據(jù)

采用setItem()方法存儲

localStorage.setItem('testKey','這是一個測試的value值'); // 存入一個值

通過屬性方式存儲  

localStorage['testKey'] = '這是一個測試的value值';

獲取數(shù)據(jù)

通過getItem()方法取值

localStorage.getItem('testKey'); // => 返回testKey對應的值

通過屬性方式取值

localStorage['testKey']; // => 這是一個測試的value值

存儲Json對象

localStorage 也可存儲Json對象:存儲時,通過JSON.stringify()將對象轉(zhuǎn)換為文本格式;讀取時,通過JSON.parse()將文本轉(zhuǎn)換回對象。

   var userEntity = {
    name: 'tom',
    age: 22
};
 
// 存儲值:將對象轉(zhuǎn)換為Json字符串
localStorage.setItem('user', JSON.stringify(userEntity));
 
// 取值時:把獲取到的Json字符串轉(zhuǎn)換回對象
var userJsonStr = localStorage .getItem('user');
userEntity = JSON.parse(userJsonStr);
console.log(userEntity.name); // => tom

標簽:延邊 保定 林芝 萍鄉(xiāng) 赤峰 泰州 大同

巨人網(wǎng)絡通訊聲明:本文標題《html5 localStorage本地存儲_動力節(jié)點Java學院整理》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    敦煌市| 大渡口区| 珲春市| 旺苍县| 河源市| 大余县| 玉门市| 石屏县| 沛县| 綦江县| 沁源县| 威海市| 突泉县| 丰台区| 巫山县| 且末县| 肇东市| 吉水县| 汕尾市| 江北区| 芷江| 敦化市| 隆昌县| 襄城县| 公主岭市| 穆棱市| 方正县| 杭锦后旗| 宁海县| 河西区| 梁平县| 巴彦县| 嵩明县| 营口市| 盐源县| 郑州市| 全州县| 泽州县| 根河市| 广东省| 湛江市|