使用sessionStorage、localStorage存储数组与对象

有时候,咱们须要将数据存储到sessionStorage和localStorage中,这样作的好处有: 数组

1 缓存数据 缓存

2 减小对内存的占用 session

可是,storage只能存储字符串的数据,对于JS中经常使用的数组或对象却不能直接存储。 spa


var obj = { name:'Jim' };
sessionStorage.obj = obj; 
localStorage.obj = obj; 

var arr = [1,2,3]; 
sessionStorage.obj = arr; 
localStorage.obj = arr;



上面的写法都是不能成功的!但咱们能够经过JSON对象提供的parse和stringify将其余数据类型转化成字符串,再存储到storage中就能够了。请看下面的代码。 code

var obj = { name:'Jim' }; 
var str = JSON.stringify(obj); 

//存入 
sessionStorage.obj = str; 
//读取 
str = sessionStorage.obj; 
//从新转换为对象 
obj = JSON.parse(str);




localStorage也同样,只是和sessionStorage的存储时间不同。

须要注意的是,JS中的数组本质上也是对象类型,因此上面的代码对数组也是适用的。 对象

相关文章
相关标签/搜索