web儲存機制localStorage和sessionStorage

來源:互聯網
上載者:User

標籤:body   cal   持久化   UNC   html   tor   des   無法   local   

https://www.cnblogs.com/yaoyuqian/p/7901052.html

web儲存包括兩種:sessionStorage 和 localStorage(都是限定在文檔源層級,非同來源文件間無法共用)

1.sessionStorage 資料放在伺服器上(IE不支援)    嚴格用於一個瀏覽器會話中儲存資料,資料在瀏覽器關閉後會立即刪除2.localStorage 資料在用戶端(低版本IE ( IE6, IE7 ) 不支援,並且不支援查詢語言)    跨會話持久化地儲存資料    localStorage與sessionStorage的區別:    localStorage只要在相同的協議、相同的主機名稱、相同的連接埠下,即同源就能讀取/修改到同一份localStorage資料。    sessionStorage比localStorage更嚴苛一點,除了協議、主機名稱、連接埠外,還要求在同一視窗(也就是瀏覽器的標籤頁)下。    用法相同:(以sessionStorage為例)    1.添加:        sessionStorage.setItem(key, value);//value可以任何資料類型    2.擷取:        sessionStorage.getItem(key);    3.刪除:        sessionStorage.removeItem(key);//刪除該儲存物件中key的索引值對    4.清除所有:        sessionStorage.clear();//清除該儲存物件中所有的索引值對    5.檢索(查):        sessionStorage.key();//檢索key[n]的值        執行個體:
    localStorage.setItem("x",1);//以"x"的名字儲存一個數值    localStorage.x = 1;//直接向 Web 儲存物件添加鍵/值對        localStorage.getItem("x");//擷取數值    localStorage.x;//直接從 Web 儲存物件中檢索鍵/值對        localStorage.removeItem("x");//刪除“x”項。    //removeItem是唯一通用的能刪除單個名值對的方式。(因為IE8不支援delete操作符)    localStorage.clear();//全部刪除。唯一能刪除儲存物件中所有名值對的方式        //將一個數組儲存為字串    var myArray = new Array(‘First Name‘, ‘Last Name‘, ‘Email Address‘);    localStorage.formData = JSON.stringify(myArray);        //檢索數組的字串版本並將它轉換成一個可用的 JavaScript 數組    var myArray = JSON.parse(localStorage.formData);
    還有一種更實用的存取方法:

var obj = {
name: ‘doctorhou‘,
describe: ‘高大、威猛、帥氣‘
};
localStorage.setItem(‘test‘, JSON.stringify(obj));
var getObj = JSON.parse(localStorage.getItem(‘test‘));

    // 儲存資料發生改變的時候(對應事件):window.onstorage    

樣本:

  <body>        <h3>這是我的使用者名稱和密碼</h3>        <div id="username"></div>        <div id="password"></div>        <script>        // 1.擷取對象        var username = document.getElementById(‘username‘);        var password = document.getElementById(‘password‘);            // 2.將儲存的資料寫入到兩個div中        username.innerHTML = localStorage.getItem(‘username‘);        password.innerHTML = localStorage.getItem(‘password‘);            // 3.做stroage的事件監聽        window.onstorage = function(e) {            // StorageEvent            // console.log(e);            // console.log(e.key);修改的鍵            // console.log(e.oldValue);原來的值            // console.log(e.newValue);新值            username.innerHTML = e.newValue;        }        </script>    </body>

web儲存機制localStorage和sessionStorage

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.