美文网首页
关于localStorage与sessionStorage,co

关于localStorage与sessionStorage,co

作者: 小呆糊总 | 来源:发表于2020-09-10 15:38 被阅读0次
问题描述:从后台调用接口,获取当前登录用户的角色是不是供应商supplier,并保存在本地localStorage里面,但是在前端项目里面使用判断时,布尔值不起作用,自动转成了字符串
import Cookies from 'js-cookie';
console.log('res.data.data.supplier的值:'+res.data.data.supplier+';类型:'+typeof res.data.data.supplier)
window.localStorage.setItem('supplier',res.data.data.supplier)//存储在localStorage里面
console.log('localStorage里的supplier的值:'+window.localStorage.getItem('supplier')+';类型:'+typeof window.localStorage.getItem('supplier'))

window.sessionStorage.setItem('supplier',res.data.data.supplier)//存储在sessionStorage
console.log('sessionStorage里的supplier的值:'+window.sessionStorage.getItem('supplier')+';类型:'+typeof window.sessionStorage.getItem('supplier'))

Cookies.set('supplier',res.data.data.supplier)//使用组件js-cookie存储在cookie里
console.log('Cookies里的supplier的值:'+Cookies.get('supplier')+';类型:'+typeof Cookies.get('supplier'))

window.localStorage.setItem('resObj',res.data.data)//存储对象
window.localStorage.setItem('resObj1',JSON.stringify(res.data.data))//存储对象
console.log(window.localStorage.getItem('resObj'))//直接获取对象,返回[object Object]
console.log(JSON.parse(window.localStorage.getItem('resObj1')))//获取转化后的对象
控制台返回结果如下:
image.png
          console.log(window.localStorage.getItem('supplier')=='true')
          console.log(window.localStorage.getItem('supplier')==='true')
          console.log(window.localStorage.getItem('supplier')==true)
          console.log(window.localStorage.getItem('supplier')===true)
控制台返回如下:
image.png
总结:
localStorage和sessionStorage,cookies都只能存储字符串类型的对象,对于JS中常用的数组或对象却不能直接存储;
可以通过JSON对象提供的parse和stringify将其他数据类型转化成字符串,再存储到storage中就可以了;

相关文章

网友评论

      本文标题:关于localStorage与sessionStorage,co

      本文链接:https://www.haomeiwen.com/subject/vidpektx.html