浅谈localStorage

localStorage,这是HTML5里新加的一个特性,只要是用来做本地存储的,他解决了cookie存储的空间不足的问题。

localStorage的优势和局限。
优势:
1、解决了cookie4k大小的存储空间,localStorage的存储空间为5M,和cookie一比较,简直是鸟枪对大炮。
2、localStorage可以将第一次请求的数据直接存储到本地,相当于一个5M大小的前端页面数据库,相比cookie可以节约带宽,但是这个却只有在高版本浏览器中才支持。
局限:
1、浏览器大小不统一,并且IE8以上的IE版本浏览器才支持。
2、目前所有的浏览器中都会把localStorage的值类型限定为string类型,这个在对我们日常比较常见的JSON对象类型需要一些转换。
3、localStorage在浏览器的隐私模式下面是不可读取的。
4、localStorage本质上是对字符串的读取,如果存储内容多的话会消耗内存空间,会导致页面变卡。
5、localStorage不能被爬虫抓取到。

localStorage的写入、修改、读取、删除。
写入:
他有三种写入方式:

    var storage = window.localStorage;
    storage["a"] = 1;
    storage.b = 2;
    storage.setItem("c", 3);
    console.log(storage["a"]); // 1
    console.log(storage["b"]); // 2
    console.log(storage["c"]); // 3

改:

 storage["a"] = 4;
 console.log(storage["a"]); // 4

读取:

var storage = window.localStorage;
var a = storage.a;
var b = storage["b"];
var c = storage.getItem("c");
console.log(a); // 1
console.log(b); // 2
console.log(c); // 3

删除:
有两种方式,1:删除所有,2:删除某个

var storage = window.localStorage;
1、 storage.clear();
2、storage.removeItem("a");

其他:
一般我们会将JSON存入localStorage中,但是在localStorage会自动将localStorage转换成为字符串形式,这个时候我们可以使用**JSON.stringify()**这个方法,来将JSON转换成为JSON字符串。
例如:

 var data={
   name:'张三',
   sex:'男',
   age:'18'
};
var d=JSON.stringify(data);
storage.setItem("data",d);
console.log(storage.data);

读取之后要将JSON字符串转换成为JSON对象,使用**JSON.parse()**方法
例如:

var json=storage.getItem("data");
var jsonObj=JSON.parse(json);
console.log(jsonObj); //json
console.log(typeof jsonObj); //object

上面就是我对localStorage的一些了解,有不对的地方和更好的地方,欢迎指出。

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值