Edit in JSFiddle

//http://www.jermywells.com

var SuperObject = function () {
    this.name = "My Super Sweet Object";
    this.bool = true;
};

var o = new SuperObject();

localStorage.mySuperObject = o;

var myStringObject = String(o);

document.body.innerHTML = 'raw object: ' + JSON.stringify(localStorage.mySuperObject) + '<br />';

document.body.innerHTML += 'localStorage.mySuperObject: ' +
    (typeof localStorage.mySuperObject) + '<br /><br />';

document.body.innerHTML += 'raw object typeof: ' +
    JSON.stringify(o) + '<br />';

document.body.innerHTML += 'localStorage.mySuperObject typeof: ' +
    (typeof o) + '<br /><br />';

document.body.innerHTML += 'raw string of mySuperObject: ' +
    JSON.stringify(myStringObject) + '<br />';

document.body.innerHTML += 'string object typeof: ' +
    (typeof myStringObject);
raw object: <span id="rawObject"></span>
<br />local storage object: <span id="localStorageObject"></span>
<br />
<br />raw object typeof: <span id="rawObjectTypeOf"></span>
<br />local storage object typeof: <span id="localStorageObjectTypeOf"></span>
<br />
<br />raw string of the SuperObject instance: <span id="stringSuperObject"></span>
<br />string object typeof: <span id="stringSuperObjectTypeOf"></span>
<br />
span {
    color:gray;
}