2021-01-27 本地存储

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

(二)本地存储的特性
1 .数据存储在用户浏览器中

2 .设置、读取方便,设置刷新页面不丢失数据

3 .容量较大,sessionStorage约5M,localStorage约20M

4 .只能存储字符串可以将对象JSON.stringify编码后存储

(三)

1 .window.sessionStorage
特性:
①生命周期为关闭浏览器窗口
②在同一个窗口(页面)下,数据可以共享
③以键值对的形式来存储使用

语法:
①存储

sessionStorage.setItem(key, value);

②获取

sessionStorage.getItem(key);

③删除

sessionStorage.removeItem(key);

④全部删除

sessionStorage.clear();

2 .window.localStorage
特性:
①生命周期为永久,除非手动删除
②可以多窗口共享,同一浏览器可以共享
③以键值对的方式存储使用

语法:
①存储

localStorage.setItem(key, value);

②获取

localStorage.getItem(key);

③删除

localStorage.removeItem(key);

④全部删除

localStorage.clear();

(四)利用本地存储记住用户名案例

<body>
    <input type="text">
    <input type="checkbox"> 记住用户名

    <script>
        var ipts = document.querySelectorAll('input');

        if (window.localStorage.getItem('uname')) {
            ipts[0].value = localStorage.getItem('uname');
            ipts[1].checked = true;
        } else {
            ipts[1].checked = false;
        }
        // 复选框按钮状态改变事件 change 
        ipts[1].addEventListener('change', function() {
            if (this.checked) {
                window.localStorage.setItem('uname', ipts[0].value);
            } else {
                window,
                localStorage.removeItem('uname');
            }
        })
    </script>
</body>

(五)本地存储实例,仿www.todolist.cn,完整源码资源区已传

知识点:
1.本地存储中,存储的数据格数只能是字符串格式,当数据存储需要为对象时,
就需要处理,将对象转换为字符串格式来存储

2 . JSON.stringify()方法用来将对象转换为字符串格式来存储
localStorage.setItem(“存储的数据名”, JSON.stringify(被处理的数据变量名))

3 . JSON.parse()方法用来将获取的数据再转换为对象
var data = JSON.parse(localStorage.getItem(“被获取的数据变量名”));

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值