Не уверен, в какой момент вы боретесь с в упомянутом учебнике, так как вы не предоставили свой фрагмент, но проверка этой статьи, я был в состоянии полностью обработать рабочий пример для вас (с некоторыми предложениями по улучшению в комментариях). Обратите внимание на следующее ...
function QueryStringToJSON(str) {
var pairs = str.split('&');
var result = {};
pairs.forEach(function (pair) {
pair = pair.split('=');
var name = pair[0]
var value = pair[1]
if (name.length)
if (result[name] !== undefined) {
if (!result[name].push) {
result[name] = [result[name]];
}
result[name].push(value || '');
} else {
result[name] = value || '';
}
});
return (result);
}
var string = 'var1=5&var2=stackoverflow&var3=blah';
var obj = QueryStringToJSON(string);
console.log(obj) // {var1: "5", var2: "stackoverflow", var3: "blah"}
JSFiddle Link - рабочая демо
Поиск вокруг в Интернете будет указывать вам jQuery BBQ: $.deparam
как подход к этому в какой-то момент. Это замечательно и, вероятно, немного более надежным, но сначала вы должны уйти от вышеуказанного кода, особенно если вы хотите получить ванильное решение (которое вы всегда должны!)
Как именно код обучения не работает для вас? – IceFire
Похоже, что он возвращает массив с объектом внутри, но мне нужен только объект – Napolux
Вы когда-нибудь решали это? Было ли мое предложение помочь вам вообще? – scniro