Html5本地储存localStorage 之储存json数组

什么是html5本地储存localStorage :
HTML5 提供了两种在客户端存储数据的新方法:
1.localStorage - 没有时间限制的数据存储
2.sessionStorage - 针对一个 session 的数据存储
之前,这些都是由 cookie 完成的。但是 cookie 不适合大量数据的存储,因为它们由每个对服务器的请求来传递,这使得 cookie 速度很慢而且效率也不高。
在 HTML5 中,数据不是由每个服务器请求传递的,而是只有在请求时使用数据。它使在不影响网站性能的情况下存储大量数据成为可能。
对于不同的网站,数据存储于不同的区域,并且一个网站只能访问其自身的数据。

localStorage只能储存字符串 所以存储数组,json时要经过处理成字符串才能储存。下面封装了一个简单的函数来操作本地数据。

demo.js

    var lsp=function(dataid){
        this.dataid=dataid;
        return this;
    };
    lsp.prototype={
        add:function(dataval){
            this.dataval=dataval || [];
           localStorage.setItem(this.dataid,JSON.stringify(this.dataval));
        },
        get:function(){
           return JSON.parse(localStorage.getItem(this.dataid));
        },
        remove:function(){
           localStorage.removeItem(this.dataid);
        },
        clear:function(){
           localStorage.clear();
        }
    };

使用

   var data=[
        {"name":"a","pwd":"123"},
        {"name":"b","pwd":"aaa"}
    ]
    var nlsp =new lsp("abc");
    nlsp.add(data);
    var gn=nlsp.get();
    //遍历数据输出
    gn.forEach(function(v){
        console.log(v.name);
    });
   /* nlsp.remove("abc");*/
    var nn=new lsp("aaaaaaa").add(data);

打开控制台查看:
这里写图片描述

这样我么就可以使用本地储存来储存一些josn数据了

你可能感兴趣的:(JavaScript)