[英]How can I get a value from a javascript object when I don't know the property name
[英]javascript I don't know how to get a specific object with getItem
我想在 localStorage 中的值中仅获取 object 中的 accessToken 值 123 。 我不知道如何得到它。
key : stackoverflow
value :
{
"accessToken": "123",
"expiresAt": "2022-07-20T03:13:31.736756085Z",
"refreshToken": "456"
}
我自己试过了,它不起作用。
console.log(window.localStorage.getItem("stackoverflow", 'accessToken'))
这不是得到它的方法吗?
这里的问题是保存为json
的值,所以你需要先使用JSON.parse()
像这样解析它
let parsedData = JSON.parse(window.localStorage.getItem("stackoverflow"))
console.log(parsedData.accessToken)
您需要将对象存储为 JSON
// SET
localStorage.setItem('stackoverflow', JSON.stringify(stackoverflow));
然后得到它并解析它
// GET
let stackoverflow = localStorage.getItem('stackoverflow');
stackoverflow = JSON.parse(stackoverflow);
最后你可以得到stackoverflow
对象的属性
const accessToken = stackoverflow.accessToken;
在保存数据之前,必须先将一个对象转换成字符串,因为localstorage只支持字符串类型,而当你想得到那个对象数据时,你必须解析那个数据,然后才能访问对象数据
localStorage.setItem(
'stackoverflow',
JSON.stringify({
accessToken: '123',
expiresAt: '2022-07-20T03:13:31.736756085Z',
refreshToken: '456',
})
);
const stackoverflow: any = localStorage.getItem('stackoverflow');
const obj = JSON.parse(stackoverflow);
console.log(obj.accessToken);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.