[Javascript] 淺談localStorage with Web APP

  • 301
  • 0

摘要:[Javascript] 淺談localStorage with Web APP

       相信大家對window.localStorage的用法都不漠生,

當年一推出根本就是轟動舞林,驚動萬教(大驚!),所以這邊就不講太多。

       最近在做APP時常常遇到到底是要寫native APP、Web APP甚至是hybrid的寫法,

理所當然公司當然會想用較小的成本去開發,因此選擇了Web APP,但是問題就來了,

要如何在browser上面儲存資訊?此時驚動萬教的[localStorage]登場了,localStorage

允許我們在browser上面儲存資料,用法也異常簡單,但因為今天是淺談,我們就不講

到它與它的鸞生兄弟(sessionStorage)的生命周期還有使用差別。

簡單來說,用法就如下:

寫入: window.localStorage.Col="XXX";

讀取: var data=window.localStorage.Col;

說實話,簡單到都不好意思打出來(哈!)。

但是就如前陣子出軌被抓包的刀大常說的一句名言,人生最重要的就是"BUT",

==>localStorage只可以存字串

那當我們要存object進去時要如何處理?

   很簡單,轉成json string,在JS裡面加入以下兩個func

   Storage.prototype.setArray = function (key, obj) {
            return this.setItem(key, JSON.stringify(obj))
   }
   Storage.prototype.getArray = function (key) {
            return JSON.parse(this.getItem(key))
   }
 
 
  寫入:      var Col= localStorage.getArray("Col");
                if (COl== null) { //如果為空,宣告new Array,以避免error
                    Col= new Array();
                } 
                Col.push($("#Col").val());
                localStorage.setArray("phrase", phrase);
 
 
  讀取:   var phrase = localStorage.getArray("Col");