i want show of keys , storage written before. code below. created function (allstorage) doesn't work. how can this?
function storeuserscribble(id) { var scribble = document.getelementbyid('scribble').innerhtml; localstorage.setitem('userscribble',scribble); } function getuserscribble() { if ( localstorage.getitem('userscribble')) { var scribble = localstorage.getitem('userscribble'); } else { var scribble = 'you can scribble directly on sticky... , remember message next time visit blog!'; } document.getelementbyid('scribble').innerhtml = scribble; } function clearlocal() { localstorage.clear(); return false; } function allstorage() { var archive = []; (var = 0; i<localstorage.length; i++) { archive[i] = localstorage.getitem(localstorage.key(i)); } }
if modify function can list items based on key (will list items only):
function allstorage() { var values = [], keys = object.keys(localstorage), = keys.length; while ( i-- ) { values.push( localstorage.getitem(keys[i]) ); } return values; } object.keys new addition javascript (ecmascript 5). lists own keys on object faster using for-in loop option this.
however, not show keys. need return object instead of array (which rather point-less imo bring far before localstorage different object - example's sake):
function allstorage() { var archive = {}, // notice change here keys = object.keys(localstorage), = keys.length; while ( i-- ) { archive[ keys[i] ] = localstorage.getitem( keys[i] ); } return archive; } if want compact format listing instead - here each item in array have key=item later can split pairs , forth:
function allstorage() { var archive = [], keys = object.keys(localstorage), = 0, key; (; key = keys[i]; i++) { archive.push( key + '=' + localstorage.getitem(key)); } return archive; }
Comments
Post a Comment