鍍金池/ 問答/HTML/ localStorage本地封裝

localStorage本地封裝

var store = {
  isArray:function(param){
     return Array.isArray(param)     
  },
  set:function(keyname,data){
    localStorage.setItem(keyname,JSON.stringify(data));
  },
  get:function(keyname){
      return JSON.parse(localStorage.getItem(keyname));
  },
  add:function(keyname,data){
    var localData = this.get(keyname);
    if(this.isArray(localData.dataObj)){
      localData.dataObj.push(data)
    } else{
      localData.dataObj = data;
    }
    this.set(keyname,localData);
  },
  edit:function(keyname,idParam,data){
    var localData = this.get(keyname);
    if(this.isArray(localData.dataObj)){
      localData.dataObj.forEach(function(v,k){
        if(v.id === idParam){
          localData.dataObj[k] = data    
        }
      });
    } else{
      localData.dataObj = data;
    }
     this.set(keyname,localData);
  },
  delete:function(keyname,idParam){
    var localData = this.get(keyname);
    if(this.isArray(localData.dataObj)){
      localData.dataObj.forEach(function(v,k){
        if(v.id === idParam){
          localData.dataObj.splice(k,1);    
        }
      });
      this.set(keyname,localData);
    }
  }
}

各位大神,我是在移動(dòng)端開發(fā)一個(gè)項(xiàng)目,遇到很多l(xiāng)ocalstorage的操作,所以便封裝了一個(gè)方法,這個(gè)方法涉及增刪改查,這里的dataObj 就是一個(gè)寫死的數(shù)組, 請(qǐng)各位大神幫忙看看這個(gè)方法封裝的有問題么? 或者有沒有合適的封裝localStorage的插件。

回答
編輯回答
赱丅呿

樓主你好!分享一個(gè)經(jīng)常用的本地存儲(chǔ)的js庫, store.js。里面針對(duì) ls, ss, 及cookie進(jìn)行了封裝,還可以兼容老的瀏覽器。非常不錯(cuò)。傳送門:https://github.com/marcuswest...

2017年12月13日 10:49
編輯回答
法克魷

請(qǐng)問有什么問題嗎?

2018年3月25日 07:41