Console.log显示对象但保存在localstorage中是[object Object]

问题描述 投票:0回答:1

我使用函数parseJwt来转换令牌,在控制台中它显示对象,但是当我将其保存在本地存储中时它显示[对象对象],并且我无法在另一个组件中使用JSON.parse它

Console.log 在本地存储中 enter image description here

     localStorage.setItem('response', parseJwt(JSON.stringify(response.data.token)));
      console.log(parseJwt(JSON.stringify(response.data.token)));
javascript reactjs typescript
1个回答
3
投票

localStorage
仅支持存储
string
。因此,当您尝试存储这样的对象时,它不会按预期工作。您需要做的就是首先对对象进行字符串化:

localStorage.setItem(
  "response",
  JSON.stringify(parseJwt(JSON.stringify(response.data.token)))
);

您看到

[object Object]
的原因是
[object Object]
是 JavaScript 对象的默认字符串表示形式。您可以在此处阅读更多相关信息。

© www.soinside.com 2019 - 2024. All rights reserved.