• 售前

  • 售后

热门帖子
入门百科

在HTML5 localStorage中存储对象的示例代码

[复制链接]
戏做顿 显示全部楼层 发表于 2021-8-14 15:05:39 |阅读模式 打印 上一主题 下一主题
我想在HTML5中存储一个JavaScript对象
  1. localStorage
复制代码
,但是我的对象显然正在转换为字符串。
我可以使用来存储和检索原始JavaScript类型和数组
  1. localStorage
复制代码
,但是对象似乎无法正常工作。应该吗
这是我的代码:
  1. var testObject = { 'one': 1, 'two': 2, 'three': 3 };
  2. console.log('typeof testObject: ' + typeof testObject);
  3. console.log('testObject properties:');
  4. for (var prop in testObject) {
  5.     console.log('  ' + prop + ': ' + testObject[prop]);
  6. }
  7. // Put the object into storage
  8. localStorage.setItem('testObject', testObject);
  9. // Retrieve the object from storage
  10. var retrievedObject = localStorage.getItem('testObject');
  11. console.log('typeof retrievedObject: ' + typeof retrievedObject);
  12. console.log('Value of retrievedObject: ' + retrievedObject);
复制代码
控制台输出为
  1. typeof testObject: object
  2. testObject properties:
  3.   one: 1
  4.   two: 2
  5.   three: 3
  6. typeof retrievedObject: string
  7. Value of retrievedObject: [object Object]
复制代码
在我看来,该
  1. setItem
复制代码
方法是在存储输入之前将输入转换为字符串。
办理方案:

再次检察Apple,Mozilla和Mozilla文档,该功能似乎仅限于处理处罚字符串键/值对。
一种办理方法是在存储对象之前先对它进行字符串化处理处罚,然后在检索它时对其进行解析:
  1. var testObject = { 'one': 1, 'two': 2, 'three': 3 };
  2. // Put the object into storage
  3. localStorage.setItem('testObject', JSON.stringify(testObject));
  4. // Retrieve the object from storage
  5. var retrievedObject = localStorage.getItem('testObject');
  6. console.log('retrievedObject: ', JSON.parse(retrievedObject));
复制代码
到此这篇关于在HTML5 localStorage中存储对象的文章就先容到这了,更多相干HTML5 localStorage存储对象内容请搜刮草根技术分享以前的文章或继承浏览下面的相干文章,盼望各人以后多多支持草根技术分享!

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作