Vamos a crear una mini-librería que nos permita guardar conjuntos de datos usando javascript y localStorage. La verdad almacenar datos en localStorage es muy simple y esta genial pero a veces necesitamos un poco más de versatilidad.
Vamos a crear el objeto con los métodos correspondientes para guardar los datos y obtenerlos.
// nombre de la coleccion de datos
function local2json(name){
// asignamos un valor o recuperamos datos almacenados
let DB = (localStorage.getItem(name))?JSON.parse(localStorage.getItem(name)):[];
/* metodos */
return{
// obtener todos los datos de la coleccion
get : ()=>{
return DB;
},
// ingresar nuevos datos
push : (obj)=>{
DB.push(obj);
localStorage.setItem(name,JSON.stringify(DB));
},
// ingresar una nueva coleccion
set : (colection)=>{
DB = colection;
localStorage.setItem(name,JSON.stringify(DB));
},
// eliminar todos los datos de la coleccion
delete : ()=>{
DB = [];
localStorage.setItem(name,JSON.stringify(DB));
}
}
}
el resultado final es multi-proposito y lo podemos usar en varios de nuestros proyectos.
ejemplo de uso:
let database = new local2json('usuarios');
database.set({nombre:'Juan',edad:15});
database.set({nombre:'Marcos',edad:17});
console.log(database.get());