有時候,咱們須要將數據存儲到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);
須要注意的是,JS中的數組本質上也是對象類型,因此上面的代碼對數組也是適用的。 對象