Ок, кавычки. На каждый ключ две ковычки. Сто ключей - двести кавычек - 200 байт. Включаем gzip - и двести байт ловко ужимаются в байт пять-шесть, не знаю. Ужас, правда?
Можно конечно и по топорному сделать, если есть желание. Не столь важно.
А подгрузка делается элементарно.
// фикс для IE8
XMLHttpRequest.prototype.DONE = 4;
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function(){
if (this.readyState == this.DONE) {
if (this.status !== 200) {
alert('Ошибка , статус:' + this.status);
return;
}
var data = JSON.parse(this.responseText);
alert(JSON.stringify(data));
}
}
xhr.open('GET', '/catalog/a.json');
xhr.send(null);