JS本地保存數據的幾種方法


1.Cookie 
這個恐怕是最常見也是用得最多的技術了,也是比較古老的技術了。COOKIE優點很多,使用起來很方便 
但它的缺點也很多: 
比如跨域訪問問題;無法保存太大的數據(最大僅為4KB);本地保存的數據會發送給服務器,浪費帶寬 等等;

2.使用sessionStorage、localStorage 
localStorage: 
是一種你不主動清除它,它會一直將存儲數據存儲在客戶端的存儲方式,即使你關閉了客戶端(瀏覽器),屬於本地持久層儲存 

sessionStorage: 
用於本地存儲一個會話(session)中的數據,一旦會話關閉,那么數據會消失,比如刷新。 
有時候,我們需要將數據存儲到sessionStorage和localStorage中,這樣做的好處有: 
1 緩存數據 
2 減少對內存的占用 
但是,storage只能存儲字符串的數據,對於JS中常用的數組或對象卻不能直接存儲。 
它能保存更大的數據(IE8上是10MB,Chrome是5MB),同時保存的數據不會再發送給服務器,避免帶寬浪費。

localStorage存儲方法(sessionStorage類似) 
localStorage.name =’vanida; 
localStorage[“name”]=’vanida’; 
localStorage.setItem(“name”,”vanida”); 
//這三種設置值方式是一樣的; 
localStorage獲取值方法 
var name = localStorage[“name”] 
var name= localStorage.name 
var name= localStorage.getItem(“name”); 
//這三種獲取值方式是一樣的; 
localStorage清除特定值方法 
//清除name的值 
localStorage.removeItem(“name”); 
localStorage.name=”; 
localStorage清除所有值方法 
localStorage.clear() 
localStorage只能存儲字符串,如果需要存儲對象,首先要轉化為字符串。利用JSON.stringify(); 
var person = {name:”vanida”,”sex”:”girl”,”age”:25}; 
localStorage.setItem(“person”,JSON.stringify(person)); 
// localStorage.person=”{“name”:”vanida”,”sex”:”girl”,”age”:25}” 
注意:JSON.stringify()中不要忘了“i”,stringify而不是stringfy! 
然后取出person的對象你可以用JSON.parse(); 
person = JSON.parse(localStorage.getItem(“person”));


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM