localstorage用法:1、localstorage拓展了cookie的4k限制;2、localstorage会可以将第一次请求的数据直接存储到本地,这个相当于一个5m大小的,针对于前端页面的数据库。
【相关文章推荐:vue.js】
localstorage用法:
一、什么是localstorage、sessionstorage
在html5中,新加入了一个localstorage特性,这个特性主要是用来作为本地存储来使用的,解决了cookie存储空间不足的问题(cookie中每条cookie的存储空间为4k),localstorage中一般浏览器支持的是5m大小,这个在不同的浏览器中localstorage会有所不同。
在html5中,本地存储是一个window的属性,包括localstorage和sessionstorage,从名字应该可以很清楚的辨认二者的区别,前者是一直存在本地的,后者只是伴随着session,窗口一旦关闭就没了。以下是localstorage 和sessionstorage的区别
(1)localstorage和sessionstorage一样都是用来存储客户端临时信息的对象。
(2)他们均只能存储字符串类型的对象(虽然规范中可以存储其他原生类型的对象,但是目前为止没有浏览器对其进行实现)。
(3)localstorage生命周期是永久,这意味着除非用户显示在浏览器提供的ui上清除localstorage信息,否则这些信息将永远存在。
(4)sessionstorage生命周期为当前窗口或标签页,一旦窗口或标签页被永久关闭了,那么所有通过sessionstorage存储的数据也就被清空了。
(5)不同浏览器无法共享localstorage或sessionstorage中的信息。相同浏览器的不同页面间可以共享相同的localstorage(页面属于相同域名和端口),但是不同页面或标签页间无法共享sessionstorage的信息。这里需要注意的是,页面及标签页仅指顶级窗口,如果一个标签页包含多个iframe标签且他们属于同源页面,那么他们之间是可以共享sessionstorage的。
二、localstorage的优势与局限
localstorage的优势
1、localstorage拓展了cookie的4k限制
2、localstorage会可以将第一次请求的数据直接存储到本地,这个相当于一个5m大小的,针对于前端页面的数据库,相比于cookie可以节约带宽,但是这个却是只有在高版本的浏览器中才支持的
localstorage的局限
1、浏览器的大小不统一,并且在ie8以上的ie版本才支持localstorage这个属性
2、目前所有的浏览器中都会把localstorage的值类型限定为string类型,这个在对我们日常比较常见的json对象类型需要一些转换
3、localstorage在浏览器的隐私模式下面是不可读取的
4、localstorage本质上是对字符串的读取,如果存储内容多的话会消耗内存空间,会导致页面变卡
5、localstorage不能被爬虫抓取到
localstorage与sessionstorage的唯一一点区别就是localstorage属于永久性存储,而sessionstorage属于当会话结束的时候,sessionstorage中的键值对会被清空
这里我们以localstorage来分析
三、localstorage的使用
首先在使用localstorage的时候,我们需要判断浏览器是否支持localstorage这个属性
if(!window.localstorage){ alert("浏览器支持localstorage"); return false; }else{ //主逻辑业务}
localstorage存储
比如现在要存储个人的学校信息,就可以像下面这样写:
var requesteducatdata = { "school": '吉林大学', "startschooltime": '2015', "finishschooltime": '2019', "schooltypeid": '大学',}; window.localstorage.setitem('educatlist', json.stringify(requesteducatdata));//对象转字符串
运行后的结果如下:
相关免费学习推荐:javascript(视频)
以上就是localstorage用法是什么的详细内容。