2016-01-22 83 views
2

我想将json保存到chrome或本地存储。我也需要能够添加物品而不会丢失其他物品。将json保存到chrome存储/本地存储

+0

可能的重复:http://stackoverflow.com/questions/2010892/storing-objects-in-html5-localstorage – metame

+0

基本上,你只能在HTML5 localstorage – metame

+0

https:// developer中存储键/值字符串。 chrome.com/extensions/storage –

回答

5

更新

var local = (function(){ 

    var setData = function(key,obj){ 
     var values = JSON.stringify(obj); 
     localStorage.setItem(key,values); 
    } 

    var getData = function(key){ 
     if(localStorage.getItem(key) != null){ 
     return JSON.parse(localStorage.getItem(key)); 
     }else{ 
      return false; 
     } 
    } 

    var updateDate = function(key,newData){ 
     if(localStorage.getItem(key) != null){ 
      var oldData = JSON.parse(localStorage.getItem(key)); 
      for(keyObj in newData){ 
       oldData[keyObj] = newData[keyObj]; 
      } 
      var values = JSON.stringify(oldData); 
      localStorage.setItem(key,values); 
     }else{ 
      return false; 
     } 
    } 

    return {set:setData,get:getData,update:updateDate} 
})(); 

你怎么用?

当你想设置一个值:当你想要得到的值

var a = {'test':123}; 
local.set('valueA',a); 

:当你想更新的值或插入

var a = local.get('valueA') 

一个新

var b = {'test':333,'test2':555}; 
local.set('valueA',b); 
1

try this code

// Object to store 
var person = { 
    'name': 'Dan', 
    'age': 20, 
    id: 7644 
}; 

var value = JSON.stringify(person); 
var key = person.id; 

// Set person object into storage 
localStorage.setItem(key, value); 

// Get person object from storage 
var personFromStorage = localStorage.getItem(key); 

personFromStorage = JSON.parse(personFromStorage); 

alert(personFromStorage.name);