本地存储之localStorage和sessionStorage

2019-12-19  本文已影响0人  鲁女女
学习导读

随着互联网的快速发展,基于网页的应用越来越普遍,同时也变得越来越复杂,为了满足各种各样的需求,会经常性在本地存储大量的数据,html5规范提出了相关解决方案。

学习目标
本地存储特性
  1. 数据存储在用户浏览器中
  2. 设置,读取方便,甚至页面刷新不丢失数据
  3. 容量较大,sessionStorage约5M,localSotrage约20M
  4. 只能存储字符串,可以将对象JSON.stringify()编码后存储
window.sessionStorage
  1. 生命周期为关闭浏览器窗口
  2. 在同一个窗口(页面)下数据可以共享
  3. 以键值对的形式存储使用

sessionStorage.setItem(key,item);

sessionStorage.getItem(key);

sessionStorage.removeItem(key);

sessionStorage.clear();

案例

HTML部分

<input type="text">
<button class="set">存储数据</button>
<button class="get">获取数据</button>
<button class="remove">删除数据</button>
<button class="del">清空所有数据</button>

JS部分

var ipt = document.querySelector('input');
var set = document.querySelector('.set');
var get = document.querySelector('.get');
var remove = document.querySelector('.remove');
var del = document.querySelector('.del');

set.addEventListener('click',function () {
    //当我们点击了之后,就可以把变单里面的值存储起来
    var val = ipt.value;
    sessionStorage.setItem("uname",val);
    sessionStorage.setItem("psw",val);
});

get.addEventListener('click',function () {
    // 当我们点击了之后,就可以把表单里的值获取过来
    console.log(sessionStorage.getItem('uname'));
});

remove.addEventListener('click',function () {
    // 当我们点击了之后,就可以把表单里的值删除了
    console.log(sessionStorage.removeItem('uname'));
});

del.addEventListener('click',function () {
    // 当我们点击了之后,就可以把表单里的值全部删除
    console.log(sessionStorage.clear());
});
window.localStorage
  1. 生命周期永久生效,除非手动删除否则关闭页面也会存在
  2. 可以多窗口(页面)共享(同一浏览器可以共享)
  3. 以键值对的形式存储使用

localStorage.setItem(key,item);

localStorage.getItem(key);

localStorage.removeItem(key);

localStorage.clear();

案例

HTML部分

<input type="text">
<button class="set">存储数据</button>
<button class="get">获取数据</button>
<button class="remove">删除数据</button>
<button class="del">清空所有数据</button>

JS部分

var ipt = document.querySelector('input');
var set = document.querySelector('.set');
var get = document.querySelector('.get');
var remove = document.querySelector('.remove');
var del = document.querySelector('.del');

set.addEventListener('click',function () {
    //当我们点击了之后,就可以把变单里面的值存储起来
    var val = ipt.value;
    localStorage.setItem("uname",val);
    localStorage.setItem("psw",val);
});

get.addEventListener('click',function () {
    // 当我们点击了之后,就可以把表单里的值获取过来
    console.log(localStorage.getItem('uname'));
});

remove.addEventListener('click',function () {
    // 当我们点击了之后,就可以把表单里的值删除了
    console.log(localStorage.removeItem('uname'));
});

del.addEventListener('click',function () {
    // 当我们点击了之后,就可以把表单里的值全部删除
    console.log(localStorage.clear());
});

效果查看:打开F12 > Application

image.png
上一篇 下一篇

猜你喜欢

热点阅读