前言
今天俺比较好奇localStorage是否可以存储对象,因此查阅了一些文章。
结果是:不可以存储对象
工作解决方案
再看Apple,Mozilla和Mozilla官方文档,localStorage功能仅限于处理字符串键/值对。
如果我们想要存储对象应该怎么处理呢?
解决方法
我们可以在存储对象之前对其进行字符串化,然后在需要使用对象时对其进行解析。
参考代码如下:
/**
* 时间:2019年8月13日
* 前端教程: https://www.pipipi.net/
*/
var testObject = { 'one': 1, 'two': 2, 'three': 3 };
// 存储一个对象
localStorage.setItem('testObject', JSON.stringify(testObject));
// 从localStorage取一个对象
var retrievedObject = localStorage.getItem('testObject');
console.log('retrievedObject: ', JSON.parse(retrievedObject));
可以看到俺通过JSON.stringify和JSON.parse方法实现了localStorage存储对象的小技巧。
原创文章,作者:犀牛前端部落,如若转载,请注明出处:https://www.pipipi.net/1748.html