My question is two fold, and would be nice to get another perspective.

I am saving some data to localStorage, but if I refresh the data is gone. and the other question, is that only the last clicked item, is getting appended to localStorage. Any help would be great.

```js
function getItem(callback){
  var itemsObj;
  $('.info').on('click', function(){
    itemsObj = {};
    $this = $(this);
    itemsObj.gameImg = $this.parent().parent().find('img').attr('src');
    itemsObj.gameTitle  = $this.parent().parent().find('h2').text();
    itemsObj.gameInfo = $this.parent().parent().find('p').text();
    // call the callback function parameter and send itemsObj as argument, callback function then received the argument as you wanted it to be. Then execute stuff from there.
    callback(itemsObj);
  });
}

// send a function instead for getItem to call when all is well
getItem(function (data) {
   // here you will receive the data
   console.log('from function:', data);
   localStorage.data = (JSON.stringify(data));
   if(localStorage.getItem("data")){
    var savedLocal = localStorage.getItem("data");
    savedLocal = JSON.parse(savedLocal);
    var favsResult = $('.favs-display-data');
     favsOutput = `<div class="col-lg-3 game">
                  <div class="view view-first">
                    <img src="${savedLocal.gameImg}"/>
                    <div class="mask">
                      <h2>${savedLocal.gameTitle}</h2> 
                      <p>${savedLocal.gameInfo}</p>
                      <a href="#" class="info">♥</a>
                    </div>
                  </div>
                </div>`
    favsResult.append(favsOutput);
   }
   console.log('savedLocal: ', savedLocal);
```