I am learning about localStorage and it sounds like each browser gives a domain 5MB.
I wrote this code to cache the data returned from an ajax call and it works. But how do I test to see if localStorage is full? If there is no localStorage space available I imagine that the ajax request should be made again.
Here's my code:
if ( localStorage && localStorage.getItem('myGithub') ) { console.log('if statement'); console.log( JSON.parse( localStorage.getItem( 'myGithub') ) ); render( JSON.parse( localStorage.getItem( 'myGithub') ) ); } else { console.log('else statment'); $.ajax({ url : 'https://api.github.com/users/xxxxxxxxx', dataType : 'json', success : function (data) { if ( localStorage ) { localStorage.setItem( 'myGithub', JSON.stringify(data) ); } console.log(data); render(data); } }); } //Render method for printing the results to the <body> element. //Returns html from the ajax call or from localStorage. function render (myObjx) { var results = ''; for (var prop in myObjx) { results += '<p>data.' + prop + ' = ' + myObjx[prop] + '</p>'; } var printData = $('body').html(results); return printData; };