uni如果本地存储中的值为对象,如何获得对象中的某个值

前言

由于前端知识不牢固,以及第一次写uni。一般碰到uni本地存储的问题我一般都是网上查找。而查到的答案一般为:

存储本地为:

 uni.setStorageSync('名字', 内容)

获取本地存储则为:

JSON.parse(uni.getStorageSync("名字"))

但是这些都是基于格式为:字段:内容。

但这次遇到的是变量名:一大串的对象。

于是这个办法就失效了。

 核心方法知识点

比如本地中所存储的数据格式如下:

userInfo:{"type":"object","data":{"id":3,"username":"emp","email":"emp@kr.com","provider":"local","confirmed":false,"blocked":false,"createdAt":"2023-12-30T05:50:13.085Z","updatedAt":"2024-03-21T00:31:09.781Z","mobile":"13511413760","age":null}}

而我想获取的内容为里面的id。

首先我们一样要先获取本地存储中的userInfo

 uni.getStorageSync("userInfo")

但这个时候我们不能使用JSON.parse了。而是要用JSON.stringify。二者区别如下。

所以这个时候我们使用username=JSON.stringify(uni.getStorageSync("userInfo"))

打印如下

'{"id":3,"username":"emp","email":"emp@kr.com","provider":"local","confirmed":false,"blocked":false,"createdAt":"2023-12-30T05:50:13.085Z","updatedAt":"2024-03-21T00:31:09.781Z","mobile":"13511413760","age":null}'

然后我们将JSON字符串解析成对象

这个时候我们就可以用JSON.pase了。userInfo=JSON.parse(username)

我们还是打印出来看看,获取到的就是一个对象

{id: 3, username: 'emp', email: 'emp@kr.com', provider: 'local', confirmed: false, …}

接下来我们就可以获取id了。

var id = userInfo.id;

大功告成!

文档仅为自己工作学习中的学习记录。接下来还是要继续学习。巩固基础

  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值