当前位置: 代码网 > it编程>前端脚本>Vue.js > 前端储存之localStrage、sessionStrage和Vuex使用

前端储存之localStrage、sessionStrage和Vuex使用

2025年02月13日 Vue.js 我要评论
简介什么是localstragelocalstorage (本地存储)是一种在用户浏览器中存储数据的客户端存储方式,允许网站将键值对数据持久保存在用户的本地浏览器中。存储的数据不受浏览器关闭的影响,可

简介

什么是localstrage

localstorage (本地存储)是一种在用户浏览器中存储数据的客户端存储方式,允许网站将键值对数据持久保存在用户的本地浏览器中

存储的数据不受浏览器关闭的影响,可以在不同会话和浏览器关闭后仍然保持有效。

  • 生命周期永久有效,除非手动删除,否则关闭页面也会存在
  • 可以多窗口(页面)共享(同一浏览器可以共享)
  • 以键值对的形式存储使用
  • 各浏览器支持的localstorage容量上限不同;一般上限为5mb
  • localstorage.getitem(‘key’); 如果key不存在则返回null,而不是 undefined

例:

标准的json对象{“name”:“john”}

//设置localstorage保存到本地,第一个为变量名,第二个是值
localstorage.setitem('username', '安琪拉')

// 获取数据
localstorage.getitem('username')

// 删除保存的数据
localstorage.removeitem('username')

// 清除所有保存的数据
localstorage.clear()

什么是sessionstrage

sessionstorage 是一种在用户浏览器中临时存储数据的客户端存储方式适用于同一浏览器窗口或标签的会话期间

存储的数据在用户关闭浏览器窗口或标签时会被清除,因此适用于保存会话相关的临时信息,例如用户登录状态、暂时的用户选项等。

注:

  • 【只在本地存储】:seesionstorage的数据不会跟随http请求一起发送到服务器,只会在本地生效,并在关闭标签页后清除数据。
  • 【存储方式】:seesionstorage的存储方式采用key、value的方式。value的值必须为字符串类型
  • 【存储上限限制】:不同的浏览器存储的上限也不一样,但大多数浏览器把上限限制在5mb以下
// 设置sessionstorage保存到本地,第一个为变量名,第二个是值
sessionstorage.setitem('sessionname', '可乐')

// 获取数据
sessionstorage.getitem('sessionname')

// 删除保存的数据
sessionstorage.removeitem('sessionname')

// 清除所有保存的数据
sessionstorage.clear()

什么是vuex

vuex 是一个用于 vue.js 应用程序的状态管理模式和库

它专门用于管理应用程序中的状态(数据),使得不同组件之间可以共享和交流数据,而无需通过传递 props 或事件来传递数据。

注:详细介绍见:vuex的原理和使用方法

扩展

  • json.stringify(); // 将json格式的数据(javascript 对象)转换成json格式的字符串
  • json.parse(); //将json格式的字符串转换成json对象进行处理

三者区别

主要区别

  • localstorage:是通过本地数据存储的,以文件的方式存储在本地;
  • sessionstorage:只是本地存储一个会话中的数据,这些数据只有在同一个会话中的页面才能访问并且当会话结束后也随之销毁;
  • vuex:是一个全局状态数据管理,存储在内存中,没有内存大小限制;是专门为vue.js应用程序开发的状态管理模式;通过采用集中式存储管理应用的所有组件的状态。

应用场景

  • localstorage:一般用于跨页面传递数据场景;长期性保存的数据;
  • sessionstorage:适用于单页应用程序,方便再各业务模块进行传值;也用于敏感账号的一次性登录,关闭当时页面再次打开时会需要重新登录
  • vuex:是专门为vue.js应用程序开发的状态管理模式;用于组件之间传值

存储永久性

  • localstorage窗口或浏览器关闭也始终有效;
  • sessionstorage仅在当前浏览器关闭前有效;
  • vuex在刷新页面时存储的值就会丢失

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com