localstorage 简单介绍
在接触localstorage前,大部分人在需要进行本地存储一些数据时,常常会使用cookie进行存储,简单易用,兼容各种浏览器。而cookie也有它的局限存在:上限4K大小。而localstorage支持5M大小上限,很大的提升了存储的空间。IE8以上也都支持了,基本满足我们对浏览器的需求。
使用方法:
一言不合,上代码:
|
|
问题
在存储过程中,localStorage会自动将存储的内容转为字符串形式,比如:
1.数组
|
|
2.对象
|
|
3.null,undefined
|
|
因此,我们在对对象等进行存储时,首先需要将期进行JSON.stringify(),取出后再转成json对象。方便操作。
而对于null等值,经常会遇到这种问题,我们进行非空判断等,常常会进行bool运算,typeof等类型判断来验证是否非空,但是从localStorage取出的值都为字符串类型,bool和typeof都会与正常的null,undefined结果不一样,因此我们对此中值建议做以下处理:
null,undefined => ‘’
没错,将null,undefined等按照’’进行存储, 而’’的bool运算结果为false,刚好达到我们的需求。