localStorage:用来作为本地存储,结局了cookie存储空间不足的问题(cookie中每条cookie的存储空间为4K)
优势:localStorage扩展了cookie的4K限制;
localStorage会可以将第一次请求的数据直接存储到本地,这个相当于一个5M大小的针对于前端页面的数据库,相比于cookie可以节约宽带,但是这个版本却只有在高版本浏览器中才支持;
局限: 1.浏览器的大小不统一,并且在IE8以上的版本才支持localStorage这个属性;
2.目前所有的浏览器都会把localStorage的值限定为string类型,这个对我们日常比较常见的json对象
类型需要一些转换
3.localStorage在浏览器的隐私模式下面是不可读取的
4.localStorage本质上是对字符串的读取,如果存储内容多的话会消耗内存空间,会导致页面变卡
5.localStorage不能被爬虫抓取到
localStorage与sessionStorage的唯一一点区别就是localStorage属于永久性存储,而sessionStorage
属于当会话结束的时候,sessionStorage中的键值对会被清空;
localStorage只支持string类型的存储,一般都是json格式。
但是好用是好用,但浏览器如果禁用localstorage那么直接获取的时候就会出错,所以一般在项目中都必须先验证浏览器是否可用localstorage
这是我在项目中使用的一个方法
function judgeLocalstorage() {
try {
if (window.localStorage) {
return true
}
} catch (error) {
return false;
}
}
if (judgeLocalstorage()) {
alert('支持')
} else {
alert('不支持');
}
所以网上说的那些直接获取的方法有所不是很完善,可以补充使用。
至于使用方法太简单啦 设置setItem() 获取getItem() 删除removeItem()