在HTML5 localStorage中存储对象的示例代码
程序员文章站
2022-03-04 09:41:02
在HTML5 localStorage中存储对象的示例代码这篇文章主要介绍了在HTML5 localStorage中存储对象的示例代码,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下... 21-04-20...
我想在html5中存储一个javascript对象localstorage
,但是我的对象显然正在转换为字符串。
我可以使用来存储和检索原始javascript类型和数组localstorage
,但是对象似乎无法正常工作。应该吗
这是我的代码:
var testobject = { 'one': 1, 'two': 2, 'three': 3 }; console.log('typeof testobject: ' + typeof testobject); console.log('testobject properties:'); for (var prop in testobject) { console.log(' ' + prop + ': ' + testobject[prop]); } // put the object into storage localstorage.setitem('testobject', testobject); // retrieve the object from storage var retrievedobject = localstorage.getitem('testobject'); console.log('typeof retrievedobject: ' + typeof retrievedobject); console.log('value of retrievedobject: ' + retrievedobject);
控制台输出为
typeof testobject: object
testobject properties:
one: 1
two: 2
three: 3
typeof retrievedobject: string
value of retrievedobject: [object object]
在我看来,该setitem
方法是在存储输入之前将输入转换为字符串。
解决方案:
再次查看apple,mozilla和mozilla文档,该功能似乎仅限于处理字符串键/值对。
一种解决方法是在存储对象之前先对它进行字符串化处理,然后在检索它时对其进行解析:
var testobject = { 'one': 1, 'two': 2, 'three': 3 }; // put the object into storage localstorage.setitem('testobject', json.stringify(testobject)); // retrieve the object from storage var retrievedobject = localstorage.getitem('testobject'); console.log('retrievedobject: ', json.parse(retrievedobject));
到此这篇关于在html5 localstorage中存储对象的文章就介绍到这了,更多相关html5 localstorage存储对象内容请搜索以前的文章或继续浏览下面的相关文章,希望大家以后多多支持!
上一篇: HTML5拖拽文件上传的示例代码
下一篇: 元旦吃什么有讲究吗
推荐阅读