javascript - jQuery + localStorage - JSON 值检查 true 或 false

标签 javascript jquery local-storage

我们正在本地存储中存储一个值,其键名为 - cookiesettings。该值将采用 JSON 格式,如下所示。

{
   "enabled":true,
   "element1":{
      "enabled":true
   },
   "element2":{
      "enabled":true
   },
   "element3":{
      "enabled":false
   }
}

不确定如何提取并检查 element3 是否启用 true/false。如果为 true,我们需要显示 div。否则,隐藏 div。

尝试使用

localStorage.getItem('cookiesetting');
localStorage.getItem('cookiesetting.element3.enabled');

但是出现未定义的错误。尝试使用:

JSON.parse(localStorage.getItem('cookiesetting'));

仍然无法找到解决方案来检查 element3 - Enabled - True 或 False。

最佳答案

查看此文档,其中说明键和值必须是字符串。

https://developer.mozilla.org/en-US/docs/Web/API/Storage/setItem

因此您必须将其存储为对象的字符串化版本。

localStorage.setItem('cookiesetting', JSON.stringify({
  "enabled":true,
  "element1":{
    "enabled":true
  },
  "element2":{
    "enabled":true
  },
  "element3":{
    "enabled":false
  }
}))

您可以通过以下方式获取该元素:

JSON.parse(localStorage.getItem('cookiesetting'))
JSON.parse(localStorage.getItem('cookiesetting')).element3.enabled

如果您有任何疑问,请告诉我。

关于javascript - jQuery + localStorage - JSON 值检查 true 或 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62495262/

相关文章:

javascript - 设置jquery多维数组

javascript - 是否有跨子域的现代 sessionStorage 替代方案?

javascript - 如何使用 Jasmine 测试点击事件内的函数调用

javascript - 相对定位的 div 重叠 - 共享同一行像素

jquery - Ruby on Rails : how to show/hide related div of radio buttons is checked

javascript - 用于检查下一个 div 是否可见并在单击时隐藏当前 div 的 jQuery 函数

webview - 使用 React Native 渲染位于设备上的网页

javascript - try-catch 是为了防止还是处理错误? (在javascript中)

javascript - 参数值 `onClick` 已更改

javascript - 带有自定义按钮的 tinymce-4 在 Chrome 和 Firefox 中工作正常但在 Safari 中不起作用 - 为什么?