In the unlikely case that, instead of returning JSON from the server as you should, you do end up parsing this yourself, here's how you might do that:
initializer
.replace(/^\{|\}$/g, '') // remove {} at beginning and end
.split(',') // break apart into key: val pairs
.reduce(function(result, keyval) { // build object
var parts = keyval.split(':').map(''.trim);
result[parts[0]] = parts[1];
return result;
}, {});
Of course, you'd probably want to add a bunch of bullet-proofing to that.
If you're using Underscore, you could use its ability to create an object from an array of [key, val] pairs:
_.object(initializer
.replace((/^\{|\}$/g, '')
.split(',')
.map(function(keyval) {
return keyval.split(':').map(''.trim);
})
);